aboutsummaryrefslogtreecommitdiffstats
path: root/qarma
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-04-01 18:01:38 +0200
committerDanilo M. <danix@danix.xyz>2026-04-01 18:01:38 +0200
commitd06c46eddde77d3193dd837755b8cf81f8428613 (patch)
treea4d71e2e056419889e72400df648cae876b9f9dc /qarma
parent02d280d8044fa69dbbee2d1785c59bc907e2f888 (diff)
downloadmy-slackbuilds-d06c46eddde77d3193dd837755b8cf81f8428613.tar.gz
my-slackbuilds-d06c46eddde77d3193dd837755b8cf81f8428613.zip
qarma: fix sbolint issues, rewrite to SBo 15.0 template
Diffstat (limited to 'qarma')
-rw-r--r--qarma/README7
-rw-r--r--qarma/qarma.SlackBuild276
-rw-r--r--qarma/slack-desc10
3 files changed, 92 insertions, 201 deletions
diff --git a/qarma/README b/qarma/README
new file mode 100644
index 0000000..981dbe5
--- /dev/null
+++ b/qarma/README
@@ -0,0 +1,7 @@
+qarma is a tool to create dialog boxes, based on Qt. It's a clone of
+Zenity which was written for GTK+.
+
+Qarma could be compiled against Qt6, Qt5 and Qt4, and supports styling
+with qt5ct and qt6ct.
+
+Homepage: https://github.com/luebking/qarma
diff --git a/qarma/qarma.SlackBuild b/qarma/qarma.SlackBuild
index 25c7a36..43c2b74 100644
--- a/qarma/qarma.SlackBuild
+++ b/qarma/qarma.SlackBuild
@@ -1,220 +1,104 @@
-#!/bin/sh
-# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
-# Copyright 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Eric Hameleers, Eindhoven, Netherlands
-# Copyright 2018 danix <danix@danix.xyz>
+#!/bin/bash
+
+# Slackware build script for qarma
+
+# Copyright 2018-2026 danix <danix@danix.xyz>
# 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.
-# -----------------------------------------------------------------------------
-#
-# Slackware SlackBuild script
-# ===========================
-# By: danix <danix@danix.xyz>
-# For: qarma
-# Descr: zenity clone for QT4/QT5
-# URL: https://github.com/luebking/qarma
-# Build needs:
-# Needs:
-# Changelog:
-# git-1: 11/Jun/2018 by danix <danix@danix.xyz>
-# * Initial build.
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
#
-# Run 'sh qarma.SlackBuild' to build a Slackware package.
-# The package (.t?z) and .txt file as well as build logs are created in /tmp .
-# Install the package using 'installpkg' or 'upgradepkg --install-new'.
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
#
-# -----------------------------------------------------------------------------
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS 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 AUTHOR 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.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qarma
VERSION=${VERSION:-1.1.0}
-BUILD=${BUILD:-4}
-# 'make' can run jobs in parallel for added speed. The number should be higher
-# than the number of cores/virtual CPU's in your system:
-NUMJOBS=${NUMJOBS:-" -j4 "}
-# The TAG is a unique identifier for all your Slackware packages.
-# Use your initials as the value for TAG for instance.
-TAG=${TAG:-_danix}
-
-# This covers most filenames you'd want as documentation. Change if needed.
-DOCS="LICENSE README.md"
-
-# Where do we look for sources?
-SRCDIR=$(cd $(dirname $0); pwd)
-
-# Place to build (TMP) package (PKG) and output (OUTPUT) the program:
-TMP=${TMP:-/tmp/build}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-# Input URL: https://github.com/luebking/qarma/archive/master.zip
-SOURCE="$SRCDIR/${PRGNAM}-${VERSION}.tar.gz"
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-##
-## --- with a little luck, you won't have to edit below this point --- ##
-##
+NUMJOBS=${NUMJOBS:--j4}
-# You can use your own private machine.conf file to overrule machine defaults:
-if [ -e $SRCDIR/machine.conf ]; then
- . $SRCDIR/machine.conf
-elif [ -e /etc/slackbuild/machine.conf ]; then
- . /etc/slackbuild/machine.conf
-else
- # Automatically determine the architecture we're building on:
- if [ -z "$ARCH" ]; then
- case "$(uname -m)" in
- i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) ARCH=$(uname -m) ;;
- esac
- export ARCH
- fi
- # Set CFLAGS/CXXFLAGS and LIBDIRSUFFIX:
- case "$ARCH" in
- i?86) SLKCFLAGS="-O2 -march=${ARCH} -mtune=i686"
- SLKLDFLAGS=""; LIBDIRSUFFIX=""
- ;;
- x86_64) SLKCFLAGS="-O2 -fPIC"
- SLKLDFLAGS="-L/usr/lib64"; LIBDIRSUFFIX="64"
- ;;
- armv7hl) SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
- SLKLDFLAGS=""; LIBDIRSUFFIX=""
- ;;
- *) SLKCFLAGS=${SLKCFLAGS:-"-O2"}
- SLKLDFLAGS=${SLKLDFLAGS:-""}; LIBDIRSUFFIX=${LIBDIRSUFFIX:-""}
- ;;
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
esac
fi
-case "$ARCH" in
- arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
- *) TARGET=$ARCH-slackware-linux ;;
-esac
-
-# Exit the script on errors:
-set -e
-trap 'echo "$0 FAILED at line ${LINENO}" | tee $OUTPUT/error-${PRGNAM}.log' ERR
-# Catch unitialized variables:
-set -u
-P1=${1:-1}
-
-# Save old umask and set to 0022:
-_UMASK_=$(umask)
-umask 0022
-
-# Create working directories:
-mkdir -p $OUTPUT # place for the package to be saved
-mkdir -p $TMP/tmp-$PRGNAM # location to build the source
-mkdir -p $PKG # place for the package to be built
-rm -rf $PKG/* # always erase old package's contents
-rm -rf $TMP/tmp-$PRGNAM/* # remove the remnants of previous build
-rm -rf $OUTPUT/{checkout,configure,make,install,error,makepkg,patch}-$PRGNAM.log
- # remove old log files
-
-
-# --- PACKAGE BUILDING ---
-
-echo "++"
-echo "|| $PRGNAM-$VERSION"
-echo "++"
-
-# Explode the package framework:
-if [ -f $SRCDIR/_$PRGNAM.tar.gz ]; then
- cd $PKG
- explodepkg $SRCDIR/_$PRGNAM.tar.gz
- cd -
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
fi
-cd $TMP/tmp-$PRGNAM
-echo "Extracting the source archive(s) for $PRGNAM..."
-tar -xvf ${SOURCE}
-cd ${PRGNAM}-${VERSION}
-chown -R root:root .
-chmod -R u+w,go+r-w,a+rX-st .
-
-# Apply patches
-if [ -f $SRCDIR/*.patch ]; then
- echo "Applying Patches"
- for PATCH in $SRCDIR/*.patch; do
- echo "Patch: $PATCH"
- patch -p1 -i $PATCH
- done
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -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
-echo Building ...
-mkdir -p build-${PRGNAM}
-cd build-${PRGNAM}
+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 .
+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 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+for PATCH in $CWD/*.patch; do
+ [ -f "$PATCH" ] && patch -p1 -i "$PATCH"
+done
+
+mkdir -p build-$PRGNAM
+cd build-$PRGNAM
qmake6 ..
- make $NUMJOBS 2>&1 | tee $OUTPUT/make-${PRGNAM}.log
+ make $NUMJOBS
mkdir -p $PKG/usr/bin
- install qarma $PKG/usr/bin 2>&1 | tee $OUTPUT/install-${PRGNAM}.log
-cd -
+ install -m 0755 qarma $PKG/usr/bin
+cd ..
-# Add documentation:
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true
-cat $SRCDIR/$(basename $0) > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION
-find $PKG/usr/doc -type f -exec chmod 644 {} \;
-
-# Compress the man page(s):
-if [ -d $PKG/usr/man ]; then
- find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
- for i in $(find $PKG/usr/man -type l -name "*.?") ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-fi
+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
-# Compress info pages and remove the package's dir file:
-if [ -d $PKG/usr/info ]; then
- rm -f $PKG/usr/info/dir
- gzip -9f $PKG/usr/info/*.info*
- # If any info files are present, consider adding this to a doinst.sh
- # (replacing XXXXX with whatever files you find):
- # chroot . install-info /usr/info/XXXXX.info.gz /usr/info/dir 2> /dev/null
-fi
-
-# Strip binaries (if any):
-#find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
-# | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-strip --strip-unneeded $PKG/usr/bin/qarma 2> /dev/null || true
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-# Add a package description:
mkdir -p $PKG/install
-cat $SRCDIR/slack-desc > $PKG/install/slack-desc
-if [ -f $SRCDIR/doinst.sh ]; then
- cat $SRCDIR/doinst.sh >> $PKG/install/doinst.sh
-elif [ -f $SRCDIR/doinst.sh.gz ]; then
- zcat $SRCDIR/doinst.sh.gz >> $PKG/install/doinst.sh
-fi
-if [ -f $SRCDIR/slack-required ]; then
- cat $SRCDIR/slack-required > $PKG/install/slack-required
-fi
+cat $CWD/slack-desc > $PKG/install/slack-desc
-# Build the package:
cd $PKG
-makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz} 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log
-cd $OUTPUT
-md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz} > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz}.md5
-cd -
-cat $PKG/install/slack-desc | grep "^${PRGNAM}" > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txt
-if [ -f $PKG/install/slack-required ]; then
- cat $PKG/install/slack-required > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.dep
-fi
-
-# Restore the original umask:
-umask ${_UMASK_}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/qarma/slack-desc b/qarma/slack-desc
index fb56765..c23cc62 100644
--- a/qarma/slack-desc
+++ b/qarma/slack-desc
@@ -5,15 +5,15 @@
# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
- |-----handy-ruler----------------------------------------------------|
-qarma: Qarma, a near perfect zenity clone
+ |-----handy-ruler------------------------------------------------------|
+qarma: qarma (near perfect zenity clone for Qt)
qarma:
-qarma: Qarma is a near perfect zenity clone, written in Qt,
+qarma: Qarma is a near perfect zenity clone, written in Qt,
qarma: could be compiled against Qt6, Qt5 and Qt4, and supports styling
qarma: with qt5ct and qt6ct.
-qarma:
+qarma:
qarma: Q: Why do you waste time cloning a perfectly fine tool?
qarma: A: "The answer is that GTK+ is primarily intended to be used on
-qarma: the GNOME desktop. GTK+ must focus on being the toolkit of
+qarma: the GNOME desktop. GTK+ must focus on being the toolkit of
qarma: the GNOME platform first, and tackle integration second."
qarma: Website: https://github.com/luebking/qarma