Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 24 May 2004 01:03:23 +0300
From:      Andrey Slusar <vasallia@ukr.net>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/67103: [NEW PORT] x11-wm/ion-2: Tiling tabbed window manager
Message-ID:  <E1BS13z-000Gci-Ao@santinel.home.ua>
Resent-Message-ID: <200405232300.i4NN0kFB049699@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         67103
>Category:       ports
>Synopsis:       [NEW PORT] x11-wm/ion-2: Tiling tabbed window manager
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun May 23 16:00:46 PDT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Andrey Slusar
>Release:        FreeBSD 5.2-CURRENT i386
>Organization:
Santinel
>Environment:
System: FreeBSD santinel.home.ua 5.2-CURRENT FreeBSD 5.2-CURRENT #0: Sat May 15 17:05:19 EEST 2004 root@santinel.home.ua:/usr/obj/usr/src/sys/ANRAY i386
>Description:
	* Tiling workspaces with tabbed frames, as discussed above.
	* Designed to be primarily used from the keyboard.
	* Fully documented configuration and scripting interface on
	   top of the lightweight Lua extension language.
	* Modular design. The main binary implements only basic window
	   manager functionality. Actual window management policies are
	   implemented by dynamically loaded workspace and other modules.
	* The query module implements a line editor similar to mini buffers
	   in many text editors. It is used to implement many different queries
	   with tab-completion support: show manual page, run program, open SSH
	   session, view file, goto named client window or workspace, etc.
	* To run those few particularly badly behaving programs, Ion-2 also supports
	   conventional workspaces of the PWM flavour through the floatws module.
	   This module is also used to implement PWM2 on top of the Ion core library.
	* Other modules include the drawing engine, dock module for Window Maker
	   dockapp support, menu module and, of course, the tiled workspaces module.
	* Full screen client windows are seen as workspaces on their own. It is possible
	   to switch to a normal workspace while keeping several client windows in full
	   screen state and also switch clients that do not themselves support
	   full screen mode to this state.
>How-To-Repeat:
	N/A
>Fix:

--- ion2.port begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	/usr/ports/x11-wm/ion-2/
#	/usr/ports/x11-wm/ion-2/files
#	/usr/ports/x11-wm/ion-2/files/patch-rules.mk
#	/usr/ports/x11-wm/ion-2/files/patch-system.mk
#	/usr/ports/x11-wm/ion-2/files/patch-ion-edit
#	/usr/ports/x11-wm/ion-2/files/patch-ion-view
#	/usr/ports/x11-wm/ion-2/distinfo
#	/usr/ports/x11-wm/ion-2/Makefile
#	/usr/ports/x11-wm/ion-2/pkg-descr
#	/usr/ports/x11-wm/ion-2/pkg-plist
#
echo c - /usr/ports/x11-wm/ion-2/
mkdir -p /usr/ports/x11-wm/ion-2/ > /dev/null 2>&1
echo c - /usr/ports/x11-wm/ion-2/files
mkdir -p /usr/ports/x11-wm/ion-2/files > /dev/null 2>&1
echo x - /usr/ports/x11-wm/ion-2/files/patch-rules.mk
sed 's/^X//' >/usr/ports/x11-wm/ion-2/files/patch-rules.mk << 'END-of-/usr/ports/x11-wm/ion-2/files/patch-rules.mk'
X--- rules.mk.orig	Wed Apr  7 10:15:54 2004
X+++ rules.mk	Mon May 24 00:34:20 2004
X@@ -91,6 +91,7 @@
X module_install:
X 	$(INSTALLDIR) $(MODULEDIR)
X 	$(LIBTOOL) --mode=install $(INSTALL) -s -m $(BIN_MODE) $(MODULE).la $(MODULEDIR)
X+	$(INSTALL) -m $(BIN_MODE) $(MODULE).la $(MODULEDIR)
X 
X clean_objs:
X 	$(RM) -f $(OBJS)
END-of-/usr/ports/x11-wm/ion-2/files/patch-rules.mk
echo x - /usr/ports/x11-wm/ion-2/files/patch-system.mk
sed 's/^X//' >/usr/ports/x11-wm/ion-2/files/patch-system.mk << 'END-of-/usr/ports/x11-wm/ion-2/files/patch-system.mk'
X--- system.mk.orig	Wed Apr  7 10:15:54 2004
X+++ system.mk	Sun May 23 23:16:38 2004
X@@ -7,7 +7,7 @@
X ## Installation paths
X ##
X 
X-PREFIX=/usr/local
X+#PREFIX=/usr/local
X 
X # Unless you are creating a package conforming to some OS's standards, you
X # probably do not want to modify the following directories:
X@@ -19,7 +19,7 @@
X # Some .lua files and ion-* shell scripts
X SHAREDIR=$(PREFIX)/share/ion
X # Manual pages
X-MANDIR=$(PREFIX)/share/man
X+MANDIR=$(PREFIX)/man
X # Some documents
X DOCDIR=$(PREFIX)/share/doc/ion
X # Nothing at the moment
X@@ -42,11 +42,11 @@
X # libtool because even more-recent-than-libtool-1.4.3 releases of those
X # OSes only have an _ancient_ 1.3.x libtool that _will_ _not_ _work even
X # though a lot of libltdl-using apps require 1.4.3.
X-LIBTOOL=libtool
X+LIBTOOL=$(LOCALBASE)/bin/libtool15 --tag=CC
X 
X # Settings for compiling and linking to ltdl
X-LTDL_INCLUDES=
X-LTDL_LIBS=-lltdl
X+LTDL_INCLUDES=-I$(LOCALBASE)/include
X+LTDL_LIBS=-L$(LOCALBASE)/lib -lltdl
X 
X # The following should do it if you have manually installed libtool 1.5 in
X # $(LIBTOOLDIR).
X@@ -72,7 +72,7 @@
X 
X # If you have installed Lua 5.0 from the official tarball without changing
X # paths, this should do it.
X-LUA_DIR=/usr/local
X+LUA_DIR=$(LOCALBASE)
X LUA_LIBS = -L$(LUA_DIR)/lib -R$(LUA_DIR)/lib -llua -llualib
X LUA_INCLUDES = -I$(LUA_DIR)/include
X LUA=$(LUA_DIR)/bin/lua
X@@ -90,7 +90,7 @@
X ## X libraries, includes and options
X ##
X 
X-X11_PREFIX=/usr/X11R6
X+X11_PREFIX=$(X11BASE)
X # SunOS/Solaris
X #X11_PREFIX=/usr/openwin
X 
X@@ -119,7 +119,7 @@
X # asprintf and vasprintf in the c library. (gnu libc has.)
X # If HAS_SYSTEM_ASPRINTF is not defined, an implementation
X # in sprintf_2.2/ is used.
X-#HAS_SYSTEM_ASPRINTF=1
X+HAS_SYSTEM_ASPRINTF=1
X 
X 
X # If you're on an archaic system (such as relatively recent *BSD releases)
X@@ -132,16 +132,16 @@
X ## C compiler
X ##
X 
X-CC=gcc
X+CC?=gcc
X 
X # Same as '-Wall -pedantic' without '-Wunused' as callbacks often
X # have unused variables.
X WARN=	-W -Wimplicit -Wreturn-type -Wswitch -Wcomment \
X 	-Wtrigraphs -Wformat -Wchar-subscripts \
X-	-Wparentheses -pedantic -Wuninitialized
X+	-Wparentheses -Wuninitialized
X 
X-CFLAGS=-g -Os $(WARN) $(DEFINES) $(EXTRA_INCLUDES) $(INCLUDES)
X-LDFLAGS=-g -Os $(EXTRA_LIBS) $(LIBS)
X+CFLAGS+=$(WARN) $(DEFINES) $(EXTRA_INCLUDES) $(INCLUDES)
X+LDFLAGS=$(EXTRA_LIBS) $(LIBS)
X 
X # The following options are mainly for development use and can be used
X # to check that the code seems to conform to some standards. Depending
X@@ -190,9 +190,9 @@
X ##
X 
X # Should work almost everywhere
X-INSTALL=install
X+#INSTALL=install
X # On a system with pure BSD install, -c might be preferred
X-#INSTALL=install -c
X+INSTALL=install -c
X 
X INSTALLDIR=mkdir -p
X 
END-of-/usr/ports/x11-wm/ion-2/files/patch-system.mk
echo x - /usr/ports/x11-wm/ion-2/files/patch-ion-edit
sed 's/^X//' >/usr/ports/x11-wm/ion-2/files/patch-ion-edit << 'END-of-/usr/ports/x11-wm/ion-2/files/patch-ion-edit'
X--- share/ion-edit.old	Sun May 23 23:24:17 2004
X+++ share/ion-edit	Sun May 23 23:24:48 2004
X@@ -1,2 +1,2 @@
X #!/bin/sh
X-exec run-mailcap --action=edit "$1" > /dev/null
X+exec ion-runinxterm -T $1 $EDITOR "$1" > /dev/null
END-of-/usr/ports/x11-wm/ion-2/files/patch-ion-edit
echo x - /usr/ports/x11-wm/ion-2/files/patch-ion-view
sed 's/^X//' >/usr/ports/x11-wm/ion-2/files/patch-ion-view << 'END-of-/usr/ports/x11-wm/ion-2/files/patch-ion-view'
X--- share/ion-view.old	Sun May 23 23:26:19 2004
X+++ share/ion-view	Sun May 23 23:28:04 2004
X@@ -1,3 +1,2 @@
X #!/bin/sh
X-exec run-mailcap --action=view "$1" > /dev/null
X-
X+exec ion-runinxterm -T $1 $EDITOR "$1" > /dev/null
END-of-/usr/ports/x11-wm/ion-2/files/patch-ion-view
echo x - /usr/ports/x11-wm/ion-2/distinfo
sed 's/^X//' >/usr/ports/x11-wm/ion-2/distinfo << 'END-of-/usr/ports/x11-wm/ion-2/distinfo'
XMD5 (ion-2-20040407.tar.gz) = f27efbd06ab1c8ac26918bef6ed029e7
XSIZE (ion-2-20040407.tar.gz) = 389518
END-of-/usr/ports/x11-wm/ion-2/distinfo
echo x - /usr/ports/x11-wm/ion-2/Makefile
sed 's/^X//' >/usr/ports/x11-wm/ion-2/Makefile << 'END-of-/usr/ports/x11-wm/ion-2/Makefile'
X# New ports collection makefile for:   ion-2
X# Date created:        23 May 2004
X# Whom:                Andrey Slusar <vasallia@ukr.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	ion-2
XPORTVERSION=	20040407
XCATEGORIES=	x11-wm
XMASTER_SITES=	http://modeemi.fi/~tuomov/dl/
X
XMAINTAINER=	vasallia@ukr.net
XCOMMENT=	Ion is a tiling tabbed window manager
X
XLIB_DEPENDS=	ltdl.4:${PORTSDIR}/devel/libltdl \
X		lua.5:${PORTSDIR}/lang/lua
X
XCONFLICTS=	ion-2002*
X
XMAN1=		ion.1 pwm.1
X
XUSE_LIBTOOL_VER=15
XUSE_X_PREFIX=	yes
XUSE_GMAKE=	yes
X
Xdo-configure:
X
X.include <bsd.port.mk>
END-of-/usr/ports/x11-wm/ion-2/Makefile
echo x - /usr/ports/x11-wm/ion-2/pkg-descr
sed 's/^X//' >/usr/ports/x11-wm/ion-2/pkg-descr << 'END-of-/usr/ports/x11-wm/ion-2/pkg-descr'
X Ion was written as an experiment on a different kind of window management
Xmodel. It tries to address the navigation problem by dividing the screen
Xinto mutually non-overlapping frames that take up the whole screen. Big
Xdisplays have so much space that this should be convenient and smaller
Xdisplays couldn't show more than one window at a time anyway. The frame
Xlayout is, of course, dynamic and different on each workspace. Given the
Xorganised tree based instead of an unorganised coordinate-based frame
Xlayout, moving between the frames can be conveniently done from the
Xkeyboard. As in PWM, the frames may have multiple clients attached, each
Xindicated with a tab.
X
XWhile this model makes using well-designed and well-behaving programs a joy,
Xsome applications, obviously, don't work well in this model. These are in
Xparticular those applications that do not conform to the ICCCM (Inter-Client
XCommunications Conventions Manual; the standard on how WM:s and applications
Xshould communicate) and expect a particular window management model.
XBadly-designed applications with multiple top-level windows that affect a
Xsingle document are also not particularly well suited to the Ion model and
Xshould be fixed, although can be occasionally kludged to be compatible.
X
XWWW: http://modeemi.cs.tut.fi/~tuomov/ion/
END-of-/usr/ports/x11-wm/ion-2/pkg-descr
echo x - /usr/ports/x11-wm/ion-2/pkg-plist
sed 's/^X//' >/usr/ports/x11-wm/ion-2/pkg-plist << 'END-of-/usr/ports/x11-wm/ion-2/pkg-plist'
Xbin/ion
Xbin/pwm
Xetc/ion/dock-draw.lua
Xetc/ion/dock.lua
Xetc/ion/draw.lua
Xetc/ion/floatws.lua
Xetc/ion/ion-bindings.lua
Xetc/ion/ion-menus.lua
Xetc/ion/ion.lua
Xetc/ion/ionws.lua
Xetc/ion/kludges.lua
Xetc/ion/look-brownsteel.lua
Xetc/ion/look-clean.lua
Xetc/ion/look-cleanios.lua
Xetc/ion/look-cleanviolet.lua
Xetc/ion/look-dusky.lua
Xetc/ion/look-greyviolet.lua
Xetc/ion/look-ios.lua
Xetc/ion/look-simpleblue.lua
Xetc/ion/look-wheat2.lua
Xetc/ion/menu.lua
Xetc/ion/pwm-bindings.lua
Xetc/ion/pwm-menus.lua
Xetc/ion/pwm.lua
Xetc/ion/query.lua
Xlib/ion/de.la
Xlib/ion/de.so
Xlib/ion/dock.la
Xlib/ion/dock.so
Xlib/ion/floatws.la
Xlib/ion/floatws.so
Xlib/ion/ion-completefile
Xlib/ion/ionws.la
Xlib/ion/ionws.so
Xlib/ion/menu.la
Xlib/ion/menu.so
Xlib/ion/query.la
Xlib/ion/query.so
Xlib/ion/lc/ioncore-efbb.lc
Xlib/ion/lc/ioncorelib.lc
Xlib/ion/lc/ioncorelib-mplexfns.lc
Xlib/ion/lc/menulib.lc
Xlib/ion/lc/querylib.lc
Xshare/ion/delib.lc
Xshare/ion/delib.lua
Xshare/ion/ion-edit
Xshare/ion/ion-man
Xshare/ion/ion-runinxterm
Xshare/ion/ion-ssh
Xshare/ion/ion-view
Xshare/ion/ioncore-efbb.lua
Xshare/ion/ioncorelib-mplexfns.lua
Xshare/ion/ioncorelib.lua
Xshare/ion/menulib.lua
Xshare/ion/querylib.lua
Xshare/ion/welcome_message.txt
Xshare/doc/ion/README
Xshare/doc/ion/LICENSE
Xshare/doc/ion/ChangeLog
X@dirrm lib/ion/lc
X@dirrm lib/ion
X@dirrm share/ion
X@dirrm share/doc/ion
X@unexec rmdir %D/etc/ion 2>/dev/null || true
END-of-/usr/ports/x11-wm/ion-2/pkg-plist
exit
--- ion2.port ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1BS13z-000Gci-Ao>