aboutsummaryrefslogtreecommitdiff
path: root/desktop/dwm
diff options
context:
space:
mode:
authorTom Canich <tcanich@canich.net>2011-02-19 23:03:31 -0600
committerRobby Workman <rworkman@slackbuilds.org>2011-02-28 09:42:04 -0600
commitb3ea517f6e6241be714fa669c3c564c0574ca1f5 (patch)
tree06ec4582684ee557797cf1f76a8f3075a97cc66c /desktop/dwm
parentbf7fd773bfa5fee9cc9bc6a8fbe4d261cba3fb05 (diff)
desktop/dwm: Added (suckless dynamic window manager)
Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
Diffstat (limited to 'desktop/dwm')
-rw-r--r--desktop/dwm/README6
-rw-r--r--desktop/dwm/README.CONFIG44
-rw-r--r--desktop/dwm/dwm.SlackBuild105
-rw-r--r--desktop/dwm/dwm.info10
-rw-r--r--desktop/dwm/patches/config.mk.diff16
-rw-r--r--desktop/dwm/slack-desc19
6 files changed, 200 insertions, 0 deletions
diff --git a/desktop/dwm/README b/desktop/dwm/README
new file mode 100644
index 0000000000000..2d265f98df78a
--- /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 0000000000000..8e9e4a28a24c1
--- /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 0000000000000..4b7e7c5b438e7
--- /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 0000000000000..eda41d07a16d4
--- /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 0000000000000..086506bc934bd
--- /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 0000000000000..0d865cf88ffe0
--- /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