notion: update to HEAD

This commit is contained in:
c0dev0id 2023-02-19 15:17:25 +01:00
parent 000816f394
commit 53ae8d4ef8
9 changed files with 312 additions and 0 deletions

53
x11/notion/Makefile Normal file
View File

@ -0,0 +1,53 @@
COMMENT= light, keyboard friendly static tiling window manager
GH_ACCOUNT= raboof
GH_PROJECT= notion
GH_COMMIT= 7b0650b35fa96d3d79850adab1cf9411c9b10ef4
#GH_TAGNAME= 4.0.2
DISTNAME= notion-4.0.2p20230207
CATEGORIES= x11
HOMEPAGE= https://notionwm.net
MAINTAINER= Stefan Hagen <sh+ports@codevoid.de>
# LGPL
PERMIT_PACKAGE= Yes
MODULES= lang/lua
# works with lua 5.1-5.3
MODLUA_VERSION= 5.3
WANTLIB += ICE SM X11 Xext Xft Xinerama Xrandr c intl
WANTLIB += readline ${MODLUA_WANTLIB}
BUILD_DEPENDS= devel/gettext,-tools
LIB_DEPENDS= ${MODLUA_LIB_DEPENDS} \
devel/gettext,-runtime
USE_GMAKE= Yes
MAKE_FLAGS= ETCDIR=$(SYSCONFDIR)/notion \
LOCALBASE=${LOCALBASE} \
NOTION_RELEASE=${GH_TAGNAME}
FAKE_FLAGS= ETCDIR=$(PREFIX)/share/examples/notion \
MANDIR=$(PREFIX)/man \
PREFIX=${TRUEPREFIX}
CFLAGS+= -I${LOCALBASE}/include -I${MODLUA_INCL_DIR}
LDFLAGS+= -L${LOCALBASE}/lib -L$(MODLUA_LIBDIR) -lintl -l$(MODLUA_LIB)
NOTION_DIR= ${SYSCONFDIR}/notion
SUBST_VARS+= NOTION_DIR
## XXX should set LUA_VERSION in MAKE_FLAGS instead, but that doesn't work
## with our non-standard lua binary/pkg-config naming scheme
#
#pre-configure:
# sed -e 's/5\.3\ 5\.2 5\.1/$(MODLUA_DEP_VERSION)/g' -i \
# $(WRKSRC)/build/lua-detect.mk
.include <bsd.port.mk>

2
x11/notion/distinfo Normal file
View File

@ -0,0 +1,2 @@
SHA256 (notion-4.0.2p20230207-7b0650b3.tar.gz) = 3JiEei2jK9uwOXGNGix97T8emBPfcX3he80BH1oPmPw=
SIZE (notion-4.0.2p20230207-7b0650b3.tar.gz) = 791843

View File

@ -0,0 +1,24 @@
libtu,libext need want gettext
Index: build/libs.mk
--- build/libs.mk.orig
+++ build/libs.mk
@@ -10,14 +10,14 @@ CFLAGS += -DNOTION_RELEASE='"$(NOTION_RELEASE)"'
LIBS_SUBDIRS += libtu
LIBTU_DIR = $(TOPDIR)/libtu
-LIBTU_INCLUDES = -I$(TOPDIR)
-LIBTU_LIBS = -L$(LIBTU_DIR) -ltu
+LIBTU_INCLUDES = -I$(TOPDIR) -I${LOCALBASE}/include
+LIBTU_LIBS = -L$(LIBTU_DIR) -L${LOCALBASE}/lib -lintl -liconv -ltu
#libextl
LIBS_SUBDIRS += libextl
LIBEXTL_DIR = $(TOPDIR)/libextl
-LIBEXTL_INCLUDES = -I$(TOPDIR)
-LIBEXTL_LIBS = -L$(LIBEXTL_DIR) -lextl
+LIBEXTL_INCLUDES = -I$(TOPDIR) -I${LOCALBASE}/include
+LIBEXTL_LIBS = -L$(LIBEXTL_DIR) -L${LOCALBASE}/lib -lintl -liconv -lextl
MKEXPORTS = $(LUA) $(LIBEXTL_DIR)/libextl-mkexports

View File

@ -0,0 +1,14 @@
Disable "remote control" modules, which per readme is a "gaping security hole"
Index: etc/cfg_defaults.lua
--- etc/cfg_defaults.lua.orig
+++ etc/cfg_defaults.lua
@@ -10,7 +10,7 @@ dopath("mod_menu")
dopath("mod_tiling")
dopath("mod_dock")
dopath("mod_sp")
-dopath("mod_notionflux")
+-- dopath("mod_notionflux")
dopath("mod_xrandr")
dopath("net_client_list")

View File

@ -0,0 +1,12 @@
Index: man/Makefile
--- man/Makefile.orig
+++ man/Makefile
@@ -13,7 +13,7 @@ SHELL=sh -e
TARGETS=notion.1 notionflux.1 welcome.txt
MKMAN=$(LUA) ../build/mkman.lua
-NROFF=nroff -man -Tlatin1
+NROFF=mandoc
#FILTERCRAP=perl -p -i -e 's/.\10//g'
FILTERCRAP=$(LUA) -e 'io.write((string.gsub(io.read("*a"), ".\8", "")))'
LUA_REFVERSION:=$(shell $(LUA) -e 'print(_VERSION:match("[\x25d.]+"))')

View File

@ -0,0 +1,32 @@
Configure for OpenBSD
Index: system-autodetect.mk
--- system-autodetect.mk.orig
+++ system-autodetect.mk
@@ -61,7 +61,7 @@ endif
#PRELOAD_MODULES=1
# Flags to link with libdl.
-DL_LIBS=-ldl
+#DL_LIBS=-ldl
##
@@ -79,7 +79,7 @@ X11_INCLUDES:=$(shell $(PKG_CONFIG) --cflags-only-I x1
# XFree86 libraries up to 4.3.0 have a bug that can cause a segfault.
# The following setting should work around that situation.
-DEFINES += -DCF_XFREE86_TEXTPROP_BUG_WORKAROUND
+#DEFINES += -DCF_XFREE86_TEXTPROP_BUG_WORKAROUND
# Use the Xutf8 routines (XFree86 extension) instead of the Xmb routines
# in an UTF-8 locale. (No, you don't need this in UTF-8 locales, and
@@ -153,7 +153,7 @@ HAS_SYSTEM_ASPRINTF ?= 1
# The following setting is needed with GNU libc for clock_gettime and the
# monotonic clock. Other systems may not need it, or may not provide a
# monotonic clock at all (which Ion can live with, and usually detect).
-LIBS += -lrt
+#LIBS += -lrt
# Cygwin needs this. Also when you disable _BSD_SOURCE you may need it.
#DEFINES += -DCF_NO_GETLOADAVG

8
x11/notion/pkg/DESCR Normal file
View File

@ -0,0 +1,8 @@
Notion is a static tiling, tabbed window manager for the X window system.
Notion simply divides the screen into frames that take the whole screen.
Big displays have so much space that this is convenient and smaller
displays couldn't show more than one window at a time anyway. The frames
can be split and growing the size of one will shrink others.
Notion is the successor of Ion3, which has been discontinued in 2009.

139
x11/notion/pkg/PLIST Normal file
View File

@ -0,0 +1,139 @@
@sample ${NOTION_DIR}/
@bin bin/notion
@bin bin/notionflux
lib/notion/
lib/notion/bin/
@bin lib/notion/bin/ion-completefile
@bin lib/notion/bin/ion-statusd
lib/notion/lc/
lib/notion/lc/de.lc
lib/notion/lc/ioncore_bindings.lc
lib/notion/lc/ioncore_efbb.lc
lib/notion/lc/ioncore_ext.lc
lib/notion/lc/ioncore_luaext.lc
lib/notion/lc/ioncore_menudb.lc
lib/notion/lc/ioncore_misc.lc
lib/notion/lc/ioncore_wd.lc
lib/notion/lc/ioncore_winprops.lc
lib/notion/lc/mod_dock.lc
lib/notion/lc/mod_menu.lc
lib/notion/lc/mod_mgmtmode.lc
lib/notion/lc/mod_notionflux.lc
lib/notion/lc/mod_query.lc
lib/notion/lc/mod_query_chdir.lc
lib/notion/lc/mod_sm.lc
lib/notion/lc/mod_sp.lc
lib/notion/lc/mod_statusbar.lc
lib/notion/lc/mod_tiling.lc
lib/notion/lc/mod_xinerama.lc
lib/notion/lc/mod_xkbevents.lc
lib/notion/lc/mod_xrandr.lc
lib/notion/lc/statusd_date.lc
lib/notion/lc/statusd_load.lc
lib/notion/lc/statusd_mail.lc
lib/notion/mod/
@so lib/notion/mod/de.so
@so lib/notion/mod/mod_dock.so
@so lib/notion/mod/mod_menu.so
@so lib/notion/mod/mod_mgmtmode.so
@so lib/notion/mod/mod_notionflux.so
@so lib/notion/mod/mod_query.so
@so lib/notion/mod/mod_sm.so
@so lib/notion/mod/mod_sp.so
@so lib/notion/mod/mod_statusbar.so
@so lib/notion/mod/mod_tiling.so
@so lib/notion/mod/mod_xinerama.so
@so lib/notion/mod/mod_xkbevents.so
@so lib/notion/mod/mod_xrandr.so
@man man/man1/notion.1
@man man/man1/notionflux.1
share/doc/notion/
share/doc/notion/AUTHORS
share/doc/notion/CONTRIBUTING.md
share/doc/notion/LICENSE
share/doc/notion/README.md
share/doc/pkg-readmes/${PKGSTEM}
share/examples/notion/
share/examples/notion/cfg_bindings.lua
@sample ${NOTION_DIR}/cfg_bindings.lua
share/examples/notion/cfg_defaults.lua
@sample ${NOTION_DIR}/cfg_defaults.lua
share/examples/notion/cfg_dock.lua
@sample ${NOTION_DIR}/cfg_dock.lua
share/examples/notion/cfg_kludges.lua
@sample ${NOTION_DIR}/cfg_kludges.lua
share/examples/notion/cfg_layouts.lua
@sample ${NOTION_DIR}/cfg_layouts.lua
share/examples/notion/cfg_menu.lua
@sample ${NOTION_DIR}/cfg_menu.lua
share/examples/notion/cfg_notion.lua
@sample ${NOTION_DIR}/cfg_notion.lua
share/examples/notion/cfg_notion3_keybindings.lua
@sample ${NOTION_DIR}/cfg_notion3_keybindings.lua
share/examples/notion/cfg_notion3_tiling.lua
@sample ${NOTION_DIR}/cfg_notion3_tiling.lua
share/examples/notion/cfg_notioncore.lua
@sample ${NOTION_DIR}/cfg_notioncore.lua
share/examples/notion/cfg_query.lua
@sample ${NOTION_DIR}/cfg_query.lua
share/examples/notion/cfg_sp.lua
@sample ${NOTION_DIR}/cfg_sp.lua
share/examples/notion/cfg_statusbar.lua
@sample ${NOTION_DIR}/cfg_statusbar.lua
share/examples/notion/cfg_tiling.lua
@sample ${NOTION_DIR}/cfg_tiling.lua
share/examples/notion/cfg_xrandr.lua
@sample ${NOTION_DIR}/cfg_xrandr.lua
share/examples/notion/look.lua
@sample ${NOTION_DIR}/look.lua
share/examples/notion/look_brownsteel.lua
@sample ${NOTION_DIR}/look_brownsteel.lua
share/examples/notion/look_clean.lua
@sample ${NOTION_DIR}/look_clean.lua
share/examples/notion/look_cleanios.lua
@sample ${NOTION_DIR}/look_cleanios.lua
share/examples/notion/look_cleanviolet.lua
@sample ${NOTION_DIR}/look_cleanviolet.lua
share/examples/notion/look_dusky.lua
@sample ${NOTION_DIR}/look_dusky.lua
share/examples/notion/look_greenlight.lua
@sample ${NOTION_DIR}/look_greenlight.lua
share/examples/notion/look_greyviolet.lua
@sample ${NOTION_DIR}/look_greyviolet.lua
share/examples/notion/look_ios.lua
@sample ${NOTION_DIR}/look_ios.lua
share/examples/notion/look_newviolet.lua
@sample ${NOTION_DIR}/look_newviolet.lua
share/examples/notion/look_newviolet_hidpi.lua
@sample ${NOTION_DIR}/look_newviolet_hidpi.lua
share/examples/notion/look_paper.lua
@sample ${NOTION_DIR}/look_paper.lua
share/examples/notion/look_simpleblue.lua
@sample ${NOTION_DIR}/look_simpleblue.lua
share/examples/notion/lookcommon_clean.lua
@sample ${NOTION_DIR}/lookcommon_clean.lua
share/examples/notion/lookcommon_clean_frame.lua
@sample ${NOTION_DIR}/lookcommon_clean_frame.lua
share/examples/notion/lookcommon_clean_stdisp.lua
@sample ${NOTION_DIR}/lookcommon_clean_stdisp.lua
share/examples/notion/lookcommon_clean_tab.lua
@sample ${NOTION_DIR}/lookcommon_clean_tab.lua
share/examples/notion/lookcommon_emboss.lua
@sample ${NOTION_DIR}/lookcommon_emboss.lua
share/examples/notion/lookcommon_emboss_frame.lua
@sample ${NOTION_DIR}/lookcommon_emboss_frame.lua
share/examples/notion/lookcommon_emboss_stdisp.lua
@sample ${NOTION_DIR}/lookcommon_emboss_stdisp.lua
share/examples/notion/lookcommon_emboss_tab.lua
@sample ${NOTION_DIR}/lookcommon_emboss_tab.lua
share/examples/notion/net_client_list.lua
@sample ${NOTION_DIR}/net_client_list.lua
share/locale/cs/LC_MESSAGES/notion.mo
share/locale/fi/LC_MESSAGES/notion.mo
share/notion/
share/notion/ion-completeman
share/notion/ion-runinxterm
share/notion/notion-lock
share/notion/notion.1
share/notion/notionflux.1
share/notion/welcome.txt

28
x11/notion/pkg/README Normal file
View File

@ -0,0 +1,28 @@
+-----------------------------------------------------------------------
| Running ${PKGSTEM} on OpenBSD
+-----------------------------------------------------------------------
Default Keybindings
===================
The notion default keybindings assume a standard US keyboard layout. In
some situations, default keys cannot be mapped because they are either
not available (for example grave key on a Germany layout) or Caps_Lock
(when you mapped Ctrl or Esc to it).
When starting notion, a popup will show you which key bindings it was
not able to map.
You can adjust bindings system wide by editing
${SYSCONFDIR}/notion/cfg_bindings.lua or only for your user by copying
${LOCALBASE}/share/examples/notion/cfg_bindings.lua to ~/.notion.
$ mkdir ~/.notion/
$ cp ${LOCALBASE}/share/examples/notion/cfg_bindings.lua ~/.notion/
Then adjust the binding that causes trouble. For example by searching
for "grave" or "Caps_Lock" and assigning another key.
Extensive documentation on keybindings and general notion configuration
can be found in the "Documentation" section on the notion website:
https://notionwm.net