From dba04447f4df0e08c713bdbfc96d8165ab5ea55a Mon Sep 17 00:00:00 2001 From: B. Watson Date: Thu, 28 Jun 2018 16:06:14 -0400 Subject: desktop/mcwm: New maintainer. Signed-off-by: B. Watson --- desktop/mcwm/README | 13 +++++++++++ desktop/mcwm/extractconfig.sh | 10 +++++++++ desktop/mcwm/mcwm.SlackBuild | 51 +++++++++++++++++++++++++++++-------------- desktop/mcwm/mcwm.info | 4 ++-- 4 files changed, 60 insertions(+), 18 deletions(-) create mode 100644 desktop/mcwm/extractconfig.sh (limited to 'desktop') diff --git a/desktop/mcwm/README b/desktop/mcwm/README index 5d39e38c1f..095685e420 100644 --- a/desktop/mcwm/README +++ b/desktop/mcwm/README @@ -1,3 +1,5 @@ +mcwm (Minimalist X11 floating window manager) + mcwm is a minimalist window manager for the X Window System written directly on top of the X protocol C-language Binding, XCB. It is a traditional floating window manager with no fancy smarts like those in @@ -22,3 +24,14 @@ Features: * Written in straight C (C99). * Written using only XCB. * Few dependencies. + +Since most config options are compiled in, rather than read from +a config file, this build allows a user-supplied config.h. To +customize the config, use a sequence of commands like: + +# sh extractconfig.sh +# vi config.h # or emacs, nano, etc +# ./mcwm.SlackBuild + +If there's a config.h in the SlackBuild's directory, it will be +used instead of the default one. diff --git a/desktop/mcwm/extractconfig.sh b/desktop/mcwm/extractconfig.sh new file mode 100644 index 0000000000..ef81959996 --- /dev/null +++ b/desktop/mcwm/extractconfig.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +PRGNAM=mcwm + +source ./$PRGNAM.info || exit 1 + +SRCVER=${VERSION/_/-} + +[ -e config.h ] && mv -b config.h config.h.old +tar xvfO $PRGNAM-$SRCVER.tar.bz2 --wildcards \*/config.h > config.h diff --git a/desktop/mcwm/mcwm.SlackBuild b/desktop/mcwm/mcwm.SlackBuild index 47d6832051..20bd41523d 100644 --- a/desktop/mcwm/mcwm.SlackBuild +++ b/desktop/mcwm/mcwm.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for mcwm -# Copyright 2014 Leonard Schmidt +# Copyright 2014 Leonard Schmidt # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,10 +22,25 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# Now maintained by B. Watson . + +# 20180628 bkw: +# Looks like upstream development has stalled since 2015. At some point, +# it might make sense to update this build for the last git commit, since +# there were a couple bugfixes and a useful-looking feature added. For +# now, it'll stay at the last release. + +# 20180628 bkw: +# - Take over maintenance. +# - Add LICENSE to doc dir, bump BUILD to 3. +# - Support user-supplied config.h (in $CWD). +# - Fix compiler warning about asprintf(). +# - Minor script cleanups/simplifications. + PRGNAM=mcwm VERSION=${VERSION:-20130209_2} -SRCVER=${SRCVER:-20130209-2} -BUILD=${BUILD:-2} +SRCVER=${VERSION/_/-} +BUILD=${BUILD:-3} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -66,26 +81,30 @@ cd $PRGNAM-$SRCVER chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ - -o -perm 511 \) -exec chmod 755 {} \; -o \ + -o -perm 511 \) -exec chmod 755 {} \+ -o \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ - -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+ + +# 20180628 bkw: This warning shouldn't hurt anything on Slack 14.2: +# mcwm.c:1554:9: warning: implicit declaration of function 'asprintf' +# ...but it might cause problems in future gcc versions. +sed -i '1i#define _GNU_SOURCE' $PRGNAM.c -mkdir -p "$PKG/usr/bin" "$PKG/usr/man/man1" -CFLAGS="$SLKCFLAGS" make PREFIX="$PKG/usr" install +# If the user has a custom config.h, use it. +[ -e $CWD/config.h ] && cat $CWD/config.h > config.h -install -m 0755 -D scripts/9icon $PKG/usr/bin/9icon -install -m 0755 -D scripts/mcicon $PKG/usr/bin/mcicon -install -m 0755 -D scripts/mcmenu $PKG/usr/bin/mcmenu -install -m 0755 -D $CWD/xinitrc.mcwm $PKG/etc/X11/xinit/xinitrc.mcwm +mkdir -p "$PKG/usr/bin" "$PKG/usr/man/man1" "$PKG/etc/X11/xinit" +CFLAGS="$SLKCFLAGS -Wl,-s" make PREFIX="$PKG/usr" install -find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ - | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true +install -m0755 -oroot -groot scripts/* $PKG/usr/bin +cat $CWD/xinitrc.mcwm >> $PKG/etc/X11/xinit/xinitrc.mcwm -find $PKG/usr/man -type f -exec gzip -9 {} \; -for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done +gzip -9 $PKG/usr/man/man1/*.1 +# include a copy of the config.h (whether it's custom or not) in docdir. mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp -a NEWS README TODO WISHLIST $PKG/usr/doc/$PRGNAM-$VERSION +cp -a NEWS README TODO WISHLIST LICENSE $PKG/usr/doc/$PRGNAM-$VERSION +cat config.h > $PKG/usr/doc/$PRGNAM-$VERSION/config.h cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install diff --git a/desktop/mcwm/mcwm.info b/desktop/mcwm/mcwm.info index 51a6e6cd19..fb72512d76 100644 --- a/desktop/mcwm/mcwm.info +++ b/desktop/mcwm/mcwm.info @@ -6,5 +6,5 @@ MD5SUM="d36a625c966067c80cf9f14609a21921" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="9menu xdotool" -MAINTAINER="Leonard Schmidt" -EMAIL="lems@gmx.net" +MAINTAINER="B. Watson" +EMAIL="yalhcru@gmail.com" -- cgit v1.2.3