diff options
author | jmmv <jmmv@pkgsrc.org> | 2019-04-02 01:49:09 +0000 |
---|---|---|
committer | jmmv <jmmv@pkgsrc.org> | 2019-04-02 01:49:09 +0000 |
commit | fec369238be0d3d18c1545ffe85cd1012086e9ba (patch) | |
tree | 338e9feb8c28bdd60f50c4003dd9dceb425ceff4 /wm | |
parent | 163a35e3d62cff3b9b3286196f1f740d355da3c1 (diff) | |
download | pkgsrc-fec369238be0d3d18c1545ffe85cd1012086e9ba.tar.gz |
Initial addition of chunkwm-0.4.8:
chunkwm is a tiling window manager for macOS that uses a plugin
architecture, successor to kwm. chunkwm represents windows as the
leaves of a binary tree, and supports binary space partitioned, monocle
and floating desktops.
Development is happening on macOS Mojave (10.14), but OSX El Capitan
(10.11.6) and newer should work fine. Older versions may or may not be
compatible and will not be officially supported.
chunkwm is controlled via the chunkc command-line utility, which sends
commands to chunkwm to manipulate windows.
chunkwm does not handle any keyboard input. A third party program (e.g.
skhd) is needed to map keyboard events to chunkwm actions via chunkc.
Diffstat (limited to 'wm')
-rw-r--r-- | wm/Makefile | 3 | ||||
-rw-r--r-- | wm/chunkwm/DESCR | 14 | ||||
-rw-r--r-- | wm/chunkwm/MESSAGE | 16 | ||||
-rw-r--r-- | wm/chunkwm/Makefile | 56 | ||||
-rw-r--r-- | wm/chunkwm/PLIST | 10 | ||||
-rw-r--r-- | wm/chunkwm/distinfo | 11 | ||||
-rw-r--r-- | wm/chunkwm/patches/patch-src_plugins_border.diff | 16 | ||||
-rw-r--r-- | wm/chunkwm/patches/patch-src_plugins_ffm.diff | 16 | ||||
-rw-r--r-- | wm/chunkwm/patches/patch-src_plugins_purify.diff | 16 | ||||
-rw-r--r-- | wm/chunkwm/patches/patch-src_plugins_template.diff | 16 | ||||
-rw-r--r-- | wm/chunkwm/patches/patch-src_plugins_tiling.diff | 16 |
11 files changed, 189 insertions, 1 deletions
diff --git a/wm/Makefile b/wm/Makefile index 67062fa4bee..797320287fe 100644 --- a/wm/Makefile +++ b/wm/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.135 2018/11/01 09:25:29 bsiegert Exp $ +# $NetBSD: Makefile,v 1.136 2019/04/02 01:49:09 jmmv Exp $ # COMMENT= X11 window managers, configuration tools, and themes @@ -22,6 +22,7 @@ SUBDIR+= bmpanel2 SUBDIR+= bsetroot SUBDIR+= bspwm SUBDIR+= ccsm +SUBDIR+= chunkwm SUBDIR+= compiz SUBDIR+= compiz-fusion-plugins-extra SUBDIR+= compiz-fusion-plugins-main diff --git a/wm/chunkwm/DESCR b/wm/chunkwm/DESCR new file mode 100644 index 00000000000..bf6804d595e --- /dev/null +++ b/wm/chunkwm/DESCR @@ -0,0 +1,14 @@ +chunkwm is a tiling window manager for macOS that uses a plugin +architecture, successor to kwm. chunkwm represents windows as the +leaves of a binary tree, and supports binary space partitioned, monocle +and floating desktops. + +Development is happening on macOS Mojave (10.14), but OSX El Capitan +(10.11.6) and newer should work fine. Older versions may or may not be +compatible and will not be officially supported. + +chunkwm is controlled via the chunkc command-line utility, which sends +commands to chunkwm to manipulate windows. + +chunkwm does not handle any keyboard input. A third party program (e.g. +skhd) is needed to map keyboard events to chunkwm actions via chunkc. diff --git a/wm/chunkwm/MESSAGE b/wm/chunkwm/MESSAGE new file mode 100644 index 00000000000..7b56a2b5815 --- /dev/null +++ b/wm/chunkwm/MESSAGE @@ -0,0 +1,16 @@ +=========================================================================== +$NetBSD: MESSAGE,v 1.1 2019/04/02 01:49:09 jmmv Exp $ + +chunkwm has been configured to start with your session. + +To get started, copy ${PREFIX}/share/examples/chunkwm/chunkwmrc to +~/.chunkwmrc and edit at will. The configuration file must be executable. + +Once done, launch chunkwm with: + +launchctl load /Library/LaunchAgents/com.koekeishiya.chunkwm.plist + +You should also install skhd, the keyboard daemon to capture key presses +and send commands to chunkwm. + +=========================================================================== diff --git a/wm/chunkwm/Makefile b/wm/chunkwm/Makefile new file mode 100644 index 00000000000..f1bd51ef4c6 --- /dev/null +++ b/wm/chunkwm/Makefile @@ -0,0 +1,56 @@ +# $NetBSD: Makefile,v 1.1 2019/04/02 01:49:09 jmmv Exp $ + +DISTNAME= ${PKGNAME:S/chunkwm-/v/} +PKGNAME= chunkwm-0.4.8 +CATEGORIES= wm +MASTER_SITES= ${MASTER_SITE_GITHUB:=koekeishiya/}chunkwm/archive/ +DIST_SUBDIR= chunkwm + +MAINTAINER= jmmv@NetBSD.org +COMMENT= Tiling window manager for macOS based on plugin architecture +LICENSE= mit + +ONLY_FOR_PLATFORM= Darwin-*-* + +USE_LANGUAGES= c++11 obj-c++ +USE_TOOLS= gmake +WRKSRC= ${WRKDIR}/${PKGNAME_NOREV} + +SUBST_CLASSES+= build +SUBST_STAGE.build= pre-configure +SUBST_FILES.build= makefile +SUBST_SED.build= -e 's,GIT_VERSION.*=.*,GIT_VERSION=\\"${DISTNAME}\\",g' + +SUBST_CLASSES+= paths +SUBST_STAGE.paths= pre-configure +SUBST_FILES.paths= examples/chunkwmrc +SUBST_FILES.paths+= examples/com.koekeishiya.chunkwm.plist +SUBST_SED.paths= -e 's,/usr/local,${PREFIX},g' +SUBST_SED.paths+= -e 's,~/\.chunkwm_plugins,${PREFIX}/libexec/chunkwm,g' + +CONF_FILES= ${PREFIX}/share/chunkwm/com.koekeishiya.chunkwm.plist \ + /Library/LaunchAgents/com.koekeishiya.chunkwm.plist + +do-build: +.for d in . src/chunkc src/plugins/border src/plugins/ffm src/plugins/purify \ + src/plugins/template src/plugins/tiling + cd ${WRKSRC}/${d} && gmake \ + BUILD_FLAGS="-O2 -std=c++11 -Wall" \ + PLUGINSDIR=${PREFIX}/libexec/chunkwm +.endfor + +INSTALLATION_DIRS= bin libexec/chunkwm share/chunkwm share/examples/chunkwm + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/bin/chunkwm \ + ${DESTDIR}${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/src/chunkc/bin/chunkc \ + ${DESTDIR}${PREFIX}/bin + ${INSTALL_SCRIPT} ${WRKSRC}/examples/chunkwmrc \ + ${DESTDIR}${PREFIX}/share/examples/chunkwm + ${INSTALL_DATA} ${WRKSRC}/examples/com.koekeishiya.chunkwm.plist \ + ${DESTDIR}${PREFIX}/share/chunkwm + ${INSTALL_LIB} ${WRKSRC}/plugins/*.so \ + ${DESTDIR}${PREFIX}/libexec/chunkwm + +.include "../../mk/bsd.pkg.mk" diff --git a/wm/chunkwm/PLIST b/wm/chunkwm/PLIST new file mode 100644 index 00000000000..bb047a50c61 --- /dev/null +++ b/wm/chunkwm/PLIST @@ -0,0 +1,10 @@ +@comment $NetBSD: PLIST,v 1.1 2019/04/02 01:49:09 jmmv Exp $ +bin/chunkc +bin/chunkwm +libexec/chunkwm/border.so +libexec/chunkwm/ffm.so +libexec/chunkwm/purify.so +libexec/chunkwm/template.so +libexec/chunkwm/tiling.so +share/chunkwm/com.koekeishiya.chunkwm.plist +share/examples/chunkwm/chunkwmrc diff --git a/wm/chunkwm/distinfo b/wm/chunkwm/distinfo new file mode 100644 index 00000000000..8cf5532c275 --- /dev/null +++ b/wm/chunkwm/distinfo @@ -0,0 +1,11 @@ +$NetBSD: distinfo,v 1.1 2019/04/02 01:49:09 jmmv Exp $ + +SHA1 (chunkwm/v0.4.8.tar.gz) = 1c1337429d4595f7691e2c52194f21dd668a19e8 +RMD160 (chunkwm/v0.4.8.tar.gz) = a5177a6a9f7c65bb427a68c0eb4d6c434b02b28e +SHA512 (chunkwm/v0.4.8.tar.gz) = b93b2081efba53268b1d2e83787bb3af505be84544d4becc688fb3da2673cf483e3b6acd6dbc7a8007685f6df4da54f2830727a5a4f1ea6a9efdf3bb981cd8eb +Size (chunkwm/v0.4.8.tar.gz) = 161867 bytes +SHA1 (patch-src_plugins_border.diff) = 76edaea66066b6697956654a91f87c63f9962d7a +SHA1 (patch-src_plugins_ffm.diff) = 9e26031bd527568fabdb45fb36daf2dd3c8a4577 +SHA1 (patch-src_plugins_purify.diff) = 10ab103d8467f474439dc9e393d3057698f8d4a1 +SHA1 (patch-src_plugins_template.diff) = 1c95e16afae5d0919178a407d2495679d46cc889 +SHA1 (patch-src_plugins_tiling.diff) = eb4c74ad03bf18e3bdfb7c6ab91ef51809a91956 diff --git a/wm/chunkwm/patches/patch-src_plugins_border.diff b/wm/chunkwm/patches/patch-src_plugins_border.diff new file mode 100644 index 00000000000..366dc161f49 --- /dev/null +++ b/wm/chunkwm/patches/patch-src_plugins_border.diff @@ -0,0 +1,16 @@ +$NetBSD: patch-src_plugins_border.diff,v 1.1 2019/04/02 01:49:09 jmmv Exp $ + +Avoid references to the work directory in the built .so plugins. +We rely on the pkgsrc Makefile to set PLUGINSDIR at build time. + +--- src/plugins/border/makefile.orig 2019-02-24 16:52:45.000000000 +0000 ++++ src/plugins/border/makefile +@@ -5,7 +5,7 @@ DEV_BIN_PATH = ./../../../plugins + DEV_BUILD_PATH = ./bin + DEV_BINS = $(DEV_BUILD_PATH)/border + SRC = ./plugin.mm +-LINK = -shared -fPIC -framework Carbon -framework Cocoa -framework ApplicationServices ++LINK = -shared -fPIC -framework Carbon -framework Cocoa -framework ApplicationServices -Wl,-install_name -Wl,$(PLUGINSDIR)/border.so + DIR := ${CURDIR} + NOW := $(shell date "+%s") + diff --git a/wm/chunkwm/patches/patch-src_plugins_ffm.diff b/wm/chunkwm/patches/patch-src_plugins_ffm.diff new file mode 100644 index 00000000000..0dc81d23832 --- /dev/null +++ b/wm/chunkwm/patches/patch-src_plugins_ffm.diff @@ -0,0 +1,16 @@ +$NetBSD: patch-src_plugins_ffm.diff,v 1.1 2019/04/02 01:49:09 jmmv Exp $ + +Avoid references to the work directory in the built .so plugins. +We rely on the pkgsrc Makefile to set PLUGINSDIR at build time. + +--- src/plugins/ffm/makefile.orig 2019-02-24 16:52:45.000000000 +0000 ++++ src/plugins/ffm/makefile +@@ -2,7 +2,7 @@ BUILD_FLAGS = -O0 -g -DCHUNKWM_DEBUG -s + BUILD_PATH = ./../../../plugins + SRC = ./plugin.cpp + BINS = $(BUILD_PATH)/ffm.so +-LINK = -shared -fPIC -framework Carbon -framework ApplicationServices ++LINK = -shared -fPIC -framework Carbon -framework ApplicationServices -Wl,-install_name -Wl,$(PLUGINSDIR)/ffm.so + + all: $(BINS) + diff --git a/wm/chunkwm/patches/patch-src_plugins_purify.diff b/wm/chunkwm/patches/patch-src_plugins_purify.diff new file mode 100644 index 00000000000..28f321d3c54 --- /dev/null +++ b/wm/chunkwm/patches/patch-src_plugins_purify.diff @@ -0,0 +1,16 @@ +$NetBSD: patch-src_plugins_purify.diff,v 1.1 2019/04/02 01:49:09 jmmv Exp $ + +Avoid references to the work directory in the built .so plugins. +We rely on the pkgsrc Makefile to set PLUGINSDIR at build time. + +--- src/plugins/purify/makefile.orig 2019-02-24 16:52:45.000000000 +0000 ++++ src/plugins/purify/makefile +@@ -2,7 +2,7 @@ BUILD_FLAGS = -O0 -g -std=c++11 -Wall + BUILD_PATH = ./../../../plugins + SRC = ./plugin.mm + BINS = $(BUILD_PATH)/purify.so +-LINK = -shared -fPIC -framework Carbon -framework Cocoa -framework ApplicationServices ++LINK = -shared -fPIC -framework Carbon -framework Cocoa -framework ApplicationServices -Wl,-install_name -Wl,$(PLUGINSDIR)/purify.so + + all: $(BINS) + diff --git a/wm/chunkwm/patches/patch-src_plugins_template.diff b/wm/chunkwm/patches/patch-src_plugins_template.diff new file mode 100644 index 00000000000..fa79432dcc7 --- /dev/null +++ b/wm/chunkwm/patches/patch-src_plugins_template.diff @@ -0,0 +1,16 @@ +$NetBSD: patch-src_plugins_template.diff,v 1.1 2019/04/02 01:49:09 jmmv Exp $ + +Avoid references to the work directory in the built .so plugins. +We rely on the pkgsrc Makefile to set PLUGINSDIR at build time. + +--- src/plugins/template/makefile.orig 2019-02-24 16:52:45.000000000 +0000 ++++ src/plugins/template/makefile +@@ -2,7 +2,7 @@ BUILD_FLAGS = -O0 -g -std=c++11 -Wall + BUILD_PATH = ./../../../plugins + SRC = ./plugin.cpp + BINS = $(BUILD_PATH)/template.so +-LINK = -shared -fPIC -framework Carbon -framework Cocoa -framework ApplicationServices ++LINK = -shared -fPIC -framework Carbon -framework Cocoa -framework ApplicationServices -Wl,-install_name -Wl,$(PLUGINSDIR)/template.so + + all: $(BINS) + diff --git a/wm/chunkwm/patches/patch-src_plugins_tiling.diff b/wm/chunkwm/patches/patch-src_plugins_tiling.diff new file mode 100644 index 00000000000..1729ca86470 --- /dev/null +++ b/wm/chunkwm/patches/patch-src_plugins_tiling.diff @@ -0,0 +1,16 @@ +$NetBSD: patch-src_plugins_tiling.diff,v 1.1 2019/04/02 01:49:09 jmmv Exp $ + +Avoid references to the work directory in the built .so plugins. +We rely on the pkgsrc Makefile to set PLUGINSDIR at build time. + +--- src/plugins/tiling/makefile.orig 2019-02-24 16:52:45.000000000 +0000 ++++ src/plugins/tiling/makefile +@@ -5,7 +5,7 @@ DEV_BIN_PATH = ./../../../plugins + DEV_BUILD_PATH = ./bin + DEV_BINS = $(DEV_BUILD_PATH)/tiling + SRC = ./plugin.mm +-LINK = -shared -fPIC -framework Carbon -framework Cocoa -framework ApplicationServices ++LINK = -shared -fPIC -framework Carbon -framework Cocoa -framework ApplicationServices -Wl,-install_name -Wl,$(PLUGINSDIR)/tiling.so + DIR := ${CURDIR} + NOW := $(shell date "+%s") + |