diff options
author | Martin Wilke <miwi@FreeBSD.org> | 2007-09-27 23:55:09 +0000 |
---|---|---|
committer | Martin Wilke <miwi@FreeBSD.org> | 2007-09-27 23:55:09 +0000 |
commit | 0b339e8b776c5a76942f20b97a037709499f0312 (patch) | |
tree | e3508df93668eaceed81862b73c23d09cbfc94ad /x11-wm/awesome2 | |
parent | 0b5ac0cdade646cd488e81e39423b78a3c450ac8 (diff) | |
download | ports-0b339e8b776c5a76942f20b97a037709499f0312.tar.gz ports-0b339e8b776c5a76942f20b97a037709499f0312.zip |
Notes
Diffstat (limited to 'x11-wm/awesome2')
-rw-r--r-- | x11-wm/awesome2/Makefile | 52 | ||||
-rw-r--r-- | x11-wm/awesome2/distinfo | 3 | ||||
-rw-r--r-- | x11-wm/awesome2/files/extrapatch-lowerfloat | 29 | ||||
-rw-r--r-- | x11-wm/awesome2/files/extrapatch-warp | 25 | ||||
-rw-r--r-- | x11-wm/awesome2/files/patch-config.mk | 29 | ||||
-rw-r--r-- | x11-wm/awesome2/files/patch-tag.c | 19 | ||||
-rw-r--r-- | x11-wm/awesome2/pkg-descr | 12 |
7 files changed, 169 insertions, 0 deletions
diff --git a/x11-wm/awesome2/Makefile b/x11-wm/awesome2/Makefile new file mode 100644 index 000000000000..5a081c834f3d --- /dev/null +++ b/x11-wm/awesome2/Makefile @@ -0,0 +1,52 @@ +# New ports collection makefile for: awesome +# Date created: September 26, 2007 +# Whom: Nikos Ntarmos <ntarmos@ceid.upatras.gr> +# +# $FreeBSD$ +# + +PORTNAME= awesome +PORTVERSION= 1.2 +CATEGORIES= x11-wm +MASTER_SITES= http://awesome.naquadah.org/download/ + +MAINTAINER= ntarmos@ceid.upatras.gr +COMMENT= A tiling window manager initialy based on a dwm code rewriting + +LIB_DEPENDS= config.4:${PORTSDIR}/devel/libconfig + +USE_XLIB= yes + +MAN1= awesome.1 +PLIST_FILES= bin/awesome +PORTDOCS= AUTHORS LICENSE README +PORTEXAMPLES= awesomerc + +OPTIONS= LWRFLT "Support lowering of floating windows" on \ + WARP "Support mouse warping" on + +.include <bsd.port.pre.mk> + +.if defined(WITH_LWRFLT) +EXTRA_PATCHES+= ${FILESDIR}/extrapatch-lowerfloat +.endif + +.if defined(WITH_WARP) +EXTRA_PATCHES+= ${FILESDIR}/extrapatch-warp +.endif + +post-install: +.if !defined(NOPORTDOCS) + @${ECHO_MSG} "installing additional documentation to ${DOCSDIR}" + @${MKDIR} ${DOCSDIR} + @${INSTALL_MAN} ${WRKSRC}/AUTHORS ${DOCSDIR} + @${INSTALL_MAN} ${WRKSRC}/LICENSE ${DOCSDIR} + @${INSTALL_MAN} ${WRKSRC}/README ${DOCSDIR} +.endif +.if !defined(NOPORTEXAMPLES) + @${ECHO_MSG} "installing example config file to ${EXAMPLESDIR}" + @${MKDIR} ${EXAMPLESDIR} + @${INSTALL_MAN} ${WRKSRC}/awesomerc ${EXAMPLESDIR} +.endif + +.include <bsd.port.post.mk> diff --git a/x11-wm/awesome2/distinfo b/x11-wm/awesome2/distinfo new file mode 100644 index 000000000000..b643c80ad1d3 --- /dev/null +++ b/x11-wm/awesome2/distinfo @@ -0,0 +1,3 @@ +MD5 (awesome-1.2.tar.gz) = 810de61609a3fabd1ce5ec745e385c57 +SHA256 (awesome-1.2.tar.gz) = 44bce503a3c27a9afc4b4f508a5cb2930ca2ace0317f24f34ab543390402cf9d +SIZE (awesome-1.2.tar.gz) = 39006 diff --git a/x11-wm/awesome2/files/extrapatch-lowerfloat b/x11-wm/awesome2/files/extrapatch-lowerfloat new file mode 100644 index 000000000000..cd23c3bce440 --- /dev/null +++ b/x11-wm/awesome2/files/extrapatch-lowerfloat @@ -0,0 +1,29 @@ +--- layout.c.orig 2007-09-26 12:08:27.000000000 +0300 ++++ layout.c 2007-09-26 17:41:42.000000000 +0300 +@@ -118,25 +118,7 @@ + drawstatusbar(disp, drawcontext, awesomeconf); + if(!sel) + return; +- if(sel->isfloating || IS_ARRANGE(layout_floating)) +- XRaiseWindow(disp, sel->win); +- if(!IS_ARRANGE(layout_floating)) +- { +- wc.stack_mode = Below; +- wc.sibling = awesomeconf->statusbar.window; +- if(!sel->isfloating) +- { +- XConfigureWindow(disp, sel->win, CWSibling | CWStackMode, &wc); +- wc.sibling = sel->win; +- } +- for(c = clients; c; c = c->next) +- { +- if(!IS_TILED(c, awesomeconf->screen, awesomeconf->tags, awesomeconf->ntags) || c == sel) +- continue; +- XConfigureWindow(disp, c->win, CWSibling | CWStackMode, &wc); +- wc.sibling = c->win; +- } +- } ++ XRaiseWindow(disp, sel->win); + XSync(disp, False); + while(XCheckMaskEvent(disp, EnterWindowMask, &ev)); + } diff --git a/x11-wm/awesome2/files/extrapatch-warp b/x11-wm/awesome2/files/extrapatch-warp new file mode 100644 index 000000000000..47b1d2dd41cd --- /dev/null +++ b/x11-wm/awesome2/files/extrapatch-warp @@ -0,0 +1,25 @@ +--- layout.c.orig 2007-09-26 13:18:33.000000000 +0300 ++++ layout.c 2007-09-26 13:20:48.000000000 +0300 +@@ -114,6 +114,22 @@ + Client *c; + XEvent ev; + XWindowChanges wc; ++ Window dummy, root; ++ int wex, wey, ex, ey, i, dummyscno; ++ unsigned int dmask; ++ ++ if(sel) { ++ ScreenInfo *si = get_screen_info(disp, awesomeconf->screen, awesomeconf->statusbar, &dummyscno); ++ root = RootWindow(disp, awesomeconf->screen); ++ XQueryPointer(disp, sel->win, &dummy, &dummy, &i, &i, &wex, &wey, &dmask); ++ XTranslateCoordinates(disp, sel->win, root, wex, wey, &ex, &ey, &dummy); ++ /* I'm so sorry for this... Shame on me... */ ++ if(ex > si[awesomeconf->screen].x_org && ex < si[awesomeconf->screen].width && ey > si[awesomeconf->screen].y_org && ey < si[awesomeconf->screen].height) { ++ XSelectInput(disp, root, SubstructureRedirectMask & EnterWindowMask); ++ XWarpPointer(disp, None, sel->win, 0, 0, 0, 0, sel->w / 2, sel->h / 2); ++ XSelectInput(disp, root, SubstructureRedirectMask); ++ } ++ } + + drawstatusbar(disp, awesomeconf->screen, drawcontext, awesomeconf); + if(!sel) diff --git a/x11-wm/awesome2/files/patch-config.mk b/x11-wm/awesome2/files/patch-config.mk new file mode 100644 index 000000000000..0d4a628d9107 --- /dev/null +++ b/x11-wm/awesome2/files/patch-config.mk @@ -0,0 +1,29 @@ +--- config.mk.orig 2007-09-26 11:41:29.000000000 +0300 ++++ config.mk 2007-09-26 11:42:35.000000000 +0300 +@@ -7,19 +7,19 @@ + LAYOUTS = layouts/tile.c layouts/floating.c + + # paths +-PREFIX = /usr/local +-MANPREFIX = ${PREFIX}/share/man ++PREFIX?= /usr/local ++MANPREFIX = ${PREFIX}/man + +-X11INC = /usr/include/X11 +-X11LIB = /usr/lib/X11 ++X11INC = ${X11BASE}/include ++X11LIB = ${X11BASE}/lib + + # includes and libs + INCS = -I. -I/usr/include -I${X11INC} `pkg-config --cflags libconfig` + LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 `pkg-config --libs libconfig` -lXext -lXrandr -lXinerama + + # flags +-CFLAGS = -fgnu89-inline -std=gnu99 -ggdb3 -pipe -Wall -Wextra -W -Wchar-subscripts -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wsign-compare -Wunused -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wno-format-zero-length -Wmissing-prototypes -Wmissing-format-attribute -Wmissing-noreturn -O3 ${INCS} -DVERSION=\"${VERSION}\" +-LDFLAGS = -ggdb3 ${LIBS} ++CFLAGS+= -pipe -Wall -W -Wchar-subscripts -Wshadow -Wcast-align -Wwrite-strings -Wunused -Wuninitialized -Wpointer-arith -Wredundant-decls -Wmissing-prototypes ${INCS} -DVERSION=\"${VERSION}\" ++LDFLAGS+= ${LIBS} + + # compiler and linker +-CC = cc ++CC?= cc diff --git a/x11-wm/awesome2/files/patch-tag.c b/x11-wm/awesome2/files/patch-tag.c new file mode 100644 index 000000000000..2a2280d0b3c3 --- /dev/null +++ b/x11-wm/awesome2/files/patch-tag.c @@ -0,0 +1,19 @@ +--- tag.c.orig ++++ tag.c +@@ -67,13 +67,13 @@ applyrules(Client * c, awesome_config *awesomeconf) + XClassHint ch = { 0, 0 }; + char *prop; + ++ XGetClassHint(c->display, c->win, &ch); + len += a_strlen(ch.res_class) + a_strlen(ch.res_name) + a_strlen(c->name); + +- prop = p_new(char, len + 1); ++ prop = p_new(char, len + 3); + + /* rule matching */ +- XGetClassHint(c->display, c->win, &ch); +- snprintf(prop, len + 1, "%s:%s:%s", ++ snprintf(prop, len + 3, "%s:%s:%s", + ch.res_class ? ch.res_class : "", ch.res_name ? ch.res_name : "", c->name); + for(i = 0; i < awesomeconf->nrules; i++) + if(regs[i].propregex && !regexec(regs[i].propregex, prop, 1, &tmp, 0)) diff --git a/x11-wm/awesome2/pkg-descr b/x11-wm/awesome2/pkg-descr new file mode 100644 index 000000000000..cb4a1fad6823 --- /dev/null +++ b/x11-wm/awesome2/pkg-descr @@ -0,0 +1,12 @@ +awesome is a tiling window manager initialy based on a dwm code +rewriting. It's extremely fast, small, dynamic and awesome. + +Windows can be managed in several layouts: tiled and floating. Each +layout can be applied on the fly, optimizing the environment for the +application in use and the task performed. + +Managing windows in tiled mode assures that no space will be waste on +your screen. No gaps, no overlap. + + +WWW: http://awesome.naquadah.org/ |