summaryrefslogtreecommitdiffstats
path: root/graphics/xzgv
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/xzgv')
-rw-r--r--graphics/xzgv/doinst.sh10
-rw-r--r--graphics/xzgv/douninst.sh22
-rw-r--r--graphics/xzgv/xzgv.SlackBuild147
-rw-r--r--graphics/xzgv/xzgv.info12
4 files changed, 122 insertions, 69 deletions
diff --git a/graphics/xzgv/doinst.sh b/graphics/xzgv/doinst.sh
index 5fb28930db..0f65eff427 100644
--- a/graphics/xzgv/doinst.sh
+++ b/graphics/xzgv/doinst.sh
@@ -1,3 +1,13 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -x /usr/bin/install-info ]; then
+ /usr/bin/install-info --info-dir=usr/info usr/info/xzgv.info.gz 2> /dev/null
+fi
diff --git a/graphics/xzgv/douninst.sh b/graphics/xzgv/douninst.sh
new file mode 100644
index 0000000000..09f14ed073
--- /dev/null
+++ b/graphics/xzgv/douninst.sh
@@ -0,0 +1,22 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+# How to cleanly remove a GNU info file from the index:
+# Rebuild the info dir after our info file was removed. With modern versions
+# of install-info, it's OK if our wildcard includes e.g. gcc.info.gz and
+# gcc-1.info.gz (it won't create duplicate index entries). We have at least
+# one package that does NOT compress its info files, for a good reason, so
+# we can't say *.info.gz here.
+if [ -x /usr/bin/install-info -a -d usr/info ]; then
+ ( cd usr/info
+ rm -f dir
+ for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done
+ )
+fi
diff --git a/graphics/xzgv/xzgv.SlackBuild b/graphics/xzgv/xzgv.SlackBuild
index 5edf65770d..3f7bad7a4c 100644
--- a/graphics/xzgv/xzgv.SlackBuild
+++ b/graphics/xzgv/xzgv.SlackBuild
@@ -1,34 +1,30 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xzgv
-# Copyright (c) 2010-2018 Markus Reichelt, Aachen, DE
-# All rights reserved.
-#
-# Permission to use, copy, modify, and distribute this software for
-# any purpose with or without fee is hereby granted, provided that
-# the above copyright notice and this permission notice appear in all
-# copies.
-#
-# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-# CONTRIBUTORS 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.
-#
-# markus reichelt, slackbuilds@mareichelt.de, 0xCCEEF115
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Original author: Markus Reichelt.
+# Now maintained by B. Watson <urchlay@slackware.uk>.
+
+# 20230308 bkw: BUILD=2, add doinunst.sh to clean up GNU info index.
+
+# 20230102 bkw: v0.9.2_2
+# - take over maintenance.
+# - relicense as WTFPL.
+# - include Debian's improved .desktop file and PNG icons.
+# - include GNU info doc in package.
+# - fix documentation permissions.
+# - get rid of useless INSTALL from docs.
+# - use Debian patch to fix man page nroff formatting.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xzgv
-VERSION=${VERSION:-0.9.2}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-0.9.2_2}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,8 +34,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,53 +59,73 @@ fi
set -e
+SRCVER="$( echo $VERSION | cut -d_ -f1 )"
+DEBVER="$( echo $VERSION | cut -d_ -f2 )"
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$SRCVER
+tar xvf $CWD/${PRGNAM}_$SRCVER-$DEBVER.debian.tar.xz
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 \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-mkdir -p $PKG/usr/bin $PKG/usr/man/man1 $PKG/usr/info
-
-echo "cc=gcc" > config.mk
-echo "CFLAGS=$SLKCFLAGS">> config.mk
-echo "AWK=awk">> config.mk
-echo "BINDIR=$PKG/usr/bin">>config.mk
-echo "INFODIR=$PKG/usr/info">>config.mk
-echo "MANDIR=$PKG/usr/man/man1">>config.mk
-echo "USE_A4_DEF=-t @afourpaper">>config.mk
-echo "LDFLAGS=-lX11 -lm">> config.mk
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# use Debian's .desktop file
+cp debian/$PRGNAM.desktop src/
+
+# use 48x48 old-style icon
+sed -i 's,icon-64,icon-48,' src/Makefile
+
+# apply Debian's patches (currently, fixes for the man page)
+for i in $( cat debian/patches/series ); do
+ patch -p1 < debian/patches/$i
+done
+
+cat > config.mk <<EOF
+CC=gcc
+AWK=awk
+CFLAGS=$SLKCFLAGS
+BINDIR=$PKG/usr/bin
+INFODIR=$PKG/usr/info
+MANDIR=$PKG/usr/man/man1
+USE_A4_DEF=-t @afourpaper
+LDFLAGS=-lX11 -lm
+PIXMAPDIR=$PKG/usr/share/pixmaps
+DESKTOPDIR1=$PKG/usr/share/applications
+DESKTOPDIR2=$PKG/usr/share/applications
+EOF
+
+mkdir -p $PKG/usr/{bin,man/man1,info,share/{pixmaps,applications}}
make
-mv src/xzgv $PKG/usr/bin
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mv doc/xzgv.1 $PKG/usr/man/man1
-
-find $PKG/usr/man/man1 -type f -exec gzip -9 {} \;
-rmdir $PKG/usr/info
-
-mkdir -p $PKG/usr/share/applications
-cat src/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS ChangeLog COPYING INSTALL NEWS README TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+strip src/$PRGNAM
+make info
+make install
+rm -f $PKG/usr/info/dir
+chmod 644 $PKG/usr/man/man*/*
+gzip $PKG/usr/man/man*/*
+
+# include Debian's PNG icons
+for i in debian/$PRGNAM-*.png; do
+ px="$( basename $i .png | cut -d- -f2 )"
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ install -m0644 -oroot -groot $i $dir/$PRGNAM.png
+done
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS ChangeLog COPYING NEWS README TODO $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/graphics/xzgv/xzgv.info b/graphics/xzgv/xzgv.info
index 8a7a85e68c..a0e2bc6089 100644
--- a/graphics/xzgv/xzgv.info
+++ b/graphics/xzgv/xzgv.info
@@ -1,10 +1,12 @@
PRGNAM="xzgv"
-VERSION="0.9.2"
+VERSION="0.9.2_2"
HOMEPAGE="https://sourceforge.net/projects/xzgv/"
-DOWNLOAD="https://downloads.sourceforge.net/xzgv/xzgv-0.9.2.tar.gz"
-MD5SUM="87d14e59268ace5ba83005a6e20e2be7"
+DOWNLOAD="https://downloads.sourceforge.net/xzgv/xzgv-0.9.2.tar.gz \
+ https://deb.debian.org/debian/pool/main/x/xzgv/xzgv_0.9.2-2.debian.tar.xz"
+MD5SUM="87d14e59268ace5ba83005a6e20e2be7 \
+ 2a838db880ef95b5c51f3f2a8c8207cb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Markus Reichelt"
-EMAIL="slackbuilds@mareichelt.de"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"