summaryrefslogtreecommitdiffstats
path: root/graphics/mcomix/mcomix.SlackBuild
blob: 2795c1b22c88af5a8cad7802f1b0effda5a9d8e9 (plain)
#!/bin/bash

# Slackware build script for mcomix

# Written by B. Watson (urchlay@slackware.uk)

# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.

# 20240207 bkw: update for v3.1.0.
# 20231124 bkw: update for v3.0.0.
# 20230905 bkw: update for v2.3.0
# 20230822 bkw: update for v2.2.1.
# 20230625 bkw: update for v2.1.1.

# Note to self: it would be possible to use bsdtar in place of unrar
# and p7zip, but it would require too much patching. Better to talk
# upstream into adding it as an option.

# 20230111 bkw: This is an all-new SlackBuild for mcomix. We removed
# mcomix from SBo in May of 2020 because it needed python2 libraries
# that no longer existed in Slackware. It was replaced with mcomix3,
# a python3 fork of mcomix. Since then, the original mcomix has been
# ported to python3, and mcomix3 development has ended.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=mcomix
VERSION=${VERSION:-3.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
  exit 0
fi

TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# No need for SLKCFLAGS (no C code here). No LIBDIRSUFFIX either,
# setup.py is smart enough to choose lib or lib64 as needed.

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
# Bad tarball permissions (every file is +x), please do not "fix" this
# by reverting to template.
find . -type f -a -exec chmod 644 {} + -o \
       -type d -a -exec chmod 755 {} +

export PYTHONPATH=/opt/python3.9/site-packages
python3 -m build --wheel --no-isolation
python3 -m installer --destdir "$PKG" dist/*.whl

# 20231124 bkw: 3.0.0 ships this stuff but doesn't install it like
# the 2.x series did.
mv share/man man
cp -a share man $PKG/usr

# 20230905 bkw: 2.2.1 has good icons. The ones in 2.3.0 are wrong-sized,
# e.g. the "32x32" one is actually 32x24. So I made a tarball of the old
# icons... which didn't include the giant 256x256 one.
# 20231124 bkw: 3.0.0 icons are still b0rked.
rm -rf $PKG/usr/share/icons/hicolor/256x256
( cd $PKG ; tar xvf $CWD/mcomix-good-icons.tar.xz )
mkdir -p $PKG/usr/share/pixmaps

# 20230905 bkw: old-style icon.
ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png

PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKGDOC
cp -a COPYING README* ChangeLog* $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

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE