From b3ea517f6e6241be714fa669c3c564c0574ca1f5 Mon Sep 17 00:00:00 2001 From: Tom Canich Date: Sat, 19 Feb 2011 23:03:31 -0600 Subject: desktop/dwm: Added (suckless dynamic window manager) Signed-off-by: Robby Workman --- desktop/dwm/README | 6 +++ desktop/dwm/README.CONFIG | 44 ++++++++++++++++ desktop/dwm/dwm.SlackBuild | 105 +++++++++++++++++++++++++++++++++++++ desktop/dwm/dwm.info | 10 ++++ desktop/dwm/patches/config.mk.diff | 16 ++++++ desktop/dwm/slack-desc | 19 +++++++ 6 files changed, 200 insertions(+) create mode 100644 desktop/dwm/README create mode 100644 desktop/dwm/README.CONFIG create mode 100644 desktop/dwm/dwm.SlackBuild create mode 100644 desktop/dwm/dwm.info create mode 100644 desktop/dwm/patches/config.mk.diff create mode 100644 desktop/dwm/slack-desc (limited to 'desktop/dwm') diff --git a/desktop/dwm/README b/desktop/dwm/README new file mode 100644 index 0000000000..2d265f98df --- /dev/null +++ b/desktop/dwm/README @@ -0,0 +1,6 @@ +dwm is a dynamic window manager for X. It manages windows in tiled and +floating layouts. Either layout can be applied dynamically, optimizing +the environment for the application in use and the task performed. It +is the little brother of wmii. + +See README.CONFIG for more information. diff --git a/desktop/dwm/README.CONFIG b/desktop/dwm/README.CONFIG new file mode 100644 index 0000000000..8e9e4a28a2 --- /dev/null +++ b/desktop/dwm/README.CONFIG @@ -0,0 +1,44 @@ +README.CONFIG for dwm + +In tiled layout, windows are managed in a master and stacking area. +The master area contains the windows which currently need most +attention, whereas the stacking area contains all other windows. In +floating layout, windows can be resized and moved freely. Dialog +windows are always managed floating, regardless of the layout +selected. + +Windows are grouped by tags. Each window can be tagged with one or +multiple tags. Selecting certain tags displays all windows with those +tags. + +dwm contains a small status bar which displays all available tags, the +layout, the title of the focused window, and the text read from the +name of the root window. The selected tags are highlighted with a +different color, while the tags of the focused window are highlighted +with a small point. + +dwm draws a small border around windows to indicate their focus state. + +CUSTOMIZATION +------------- +Place patches in patches/ . Any files in this directory will be +applied before the build. If you wish to make changes to the default +keybindings or other settings, produce a patch against config.h. +config.h is a copy of config.def.h distributed with the source +tarball. + +Place any patches in the patches/ directory before starting the +SlackBuild script. + +Example: + +$ cd dwm-5.8.2 +$ cp config.def.h config.h +$ vi config.h +[make customizations] +$ diff -u config.h config.def.h >> ../patches/config.patch +$ cd .. +$ sh dwm.SlackBuild + + + diff --git a/desktop/dwm/dwm.SlackBuild b/desktop/dwm/dwm.SlackBuild new file mode 100644 index 0000000000..4b7e7c5b43 --- /dev/null +++ b/desktop/dwm/dwm.SlackBuild @@ -0,0 +1,105 @@ +#!/bin/sh + +# Slackware build script for dwm + +# Copyright (c) 2009,2011 Tom Canich, State College, Pennsylvania, USA +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of Tom Canich nor the names of other contributors +# may be used to endorse or promote products derived from this +# software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY Tom Canich ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN +# NO EVENT SHALL Tom Canich BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +# EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=dwm +VERSION=${VERSION:-5.8.2} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e # Exit on most errors + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION +mv config.def.h config.h + +for i in $(ls $CWD/patches); do + patch -p0 < $CWD/patches/$i +done + +make \ + OPTS="$SLKCFLAGS" \ + PREFIX=/usr \ + MANPREFIX=/usr/man \ + X11INC=/usr/include \ + X11LIB=/usr/lib${LIBDIRSUFFIX}/X11 + +make install \ + OPTS="$SLKCFLAGS" \ + PREFIX=/usr \ + MANPREFIX=/usr/man \ + X11INC=/usr/include \ + X11LIB=/usr/lib${LIBDIRSUFFIX}/X11 \ + DESTDIR=$PKG + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +find $PKG/usr/man -type f -exec gzip -9 {} \; + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp $CWD/README $CWD/README.CONFIG $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/desktop/dwm/dwm.info b/desktop/dwm/dwm.info new file mode 100644 index 0000000000..eda41d07a1 --- /dev/null +++ b/desktop/dwm/dwm.info @@ -0,0 +1,10 @@ +PRGNAM="dwm" +VERSION="5.8.2" +HOMEPAGE="http://dwm.suckless.org" +DOWNLOAD="http://dl.suckless.org/dwm/dwm-5.8.2.tar.gz" +MD5SUM="f0b422bfeaa812d66c6dd15c3cc92a6b" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="Tom Canich" +EMAIL="tcanich@canich.net" +APPROVED="rworkman" diff --git a/desktop/dwm/patches/config.mk.diff b/desktop/dwm/patches/config.mk.diff new file mode 100644 index 0000000000..086506bc93 --- /dev/null +++ b/desktop/dwm/patches/config.mk.diff @@ -0,0 +1,16 @@ +--- config.mk 2010-06-04 05:39:15.000000000 -0500 ++++ config.mk 2011-02-19 22:26:00.055940203 -0600 +@@ -16,11 +16,11 @@ + + # includes and libs + INCS = -I. -I/usr/include -I${X11INC} +-LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${XINERAMALIBS} ++LIBS = -lc -L${X11LIB} -lX11 ${XINERAMALIBS} + + # flags + CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS} +-CFLAGS = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS} ++CFLAGS = -g -std=c99 -pedantic -Wall ${OPTS} ${INCS} ${CPPFLAGS} + #CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS} + LDFLAGS = -g ${LIBS} + #LDFLAGS = -s ${LIBS} diff --git a/desktop/dwm/slack-desc b/desktop/dwm/slack-desc new file mode 100644 index 0000000000..0d865cf88f --- /dev/null +++ b/desktop/dwm/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +dwm: dwm (suckless dynamic window manager) +dwm: +dwm: dwm is a dynamic window manager for X. It manages windows in tiled and +dwm: floating layouts. Either layout can be applied dynamically, optimizing +dwm: the environment for the application in use and the task performed. It +dwm: is the little brother of wmii. +dwm: In tiled layout, windows are managed in a master and stacking area. The +dwm: master area contains the windows which currently need most attention, +dwm: whereas the stacking area contains all other windows. +dwm: +dwm: Homepage: http://dwm.suckless.org -- cgit v1.2.3