diff --git a/audio/famitracker-qt/README b/audio/famitracker-qt/README new file mode 100644 index 0000000000..fbe4292d67 --- /dev/null +++ b/audio/famitracker-qt/README @@ -0,0 +1,7 @@ +famitracker-qt (Qt port of FamiTracker) + +FamiTracker Qt is a free cross-platform Qt fork of FamiTracker for +Linux. FamiTracker Qt is created in order to bring the popular +NES/Famicom music tracker to Linux. ALSA is the one supported audio +API. The software license is mixed GPL v2/New BSD (inherited from +FamiTracker CX). diff --git a/audio/famitracker-qt/doinst.sh b/audio/famitracker-qt/doinst.sh new file mode 100644 index 0000000000..a993650058 --- /dev/null +++ b/audio/famitracker-qt/doinst.sh @@ -0,0 +1,10 @@ +if [ -x /usr/bin/update-desktop-database ]; then + /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1 +fi + +# If other icon themes are installed, then add to/modify this as needed +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 -f usr/share/icons/hicolor >/dev/null 2>&1 + fi +fi diff --git a/audio/famitracker-qt/famitracker-qt.SlackBuild b/audio/famitracker-qt/famitracker-qt.SlackBuild new file mode 100644 index 0000000000..2eed7777cc --- /dev/null +++ b/audio/famitracker-qt/famitracker-qt.SlackBuild @@ -0,0 +1,111 @@ +#!/bin/bash + +# Slackware build script for famitracker-qt + +# Copyright 2022 Bloyburt +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 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=famitracker-qt +VERSION=${VERSION:-0.4.2a} +COMMIT=5447136d987c63113dcb3806551632344090b7ed +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 the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +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} + +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 + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$COMMIT +tar xvf $CWD/$PRGNAM-$COMMIT.tar.gz +cd $PRGNAM-$COMMIT +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 {} \; + +mkdir -p build +cd build +patch ../src/famitracker-qt.pro $CWD/famitracker-qt.pro.patch +qmake-qt5 ../src/famitracker-qt.pro +make +cd .. + +# Copy the binary into the package and strip it +mkdir -p $PKG/usr/bin +cp -a build/famitracker $PKG/usr/bin/ +strip -s $PKG/usr/bin/famitracker + +# Copy the documentation into the package +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a GPL.txt README.md Texts src/qt-gui/res/about.html $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +# Copy the icon and desktop file into the package +mkdir -p $PKG/usr/share/pixmaps/ +cp -a src/qt-gui/res/famitracker.png $PKG/usr/share/pixmaps/ +mkdir -p $PKG/usr/share/applications/ +cat $CWD/famitracker-qt.desktop > $PKG/usr/share/applications/famitracker-qt.desktop + +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 diff --git a/audio/famitracker-qt/famitracker-qt.desktop b/audio/famitracker-qt/famitracker-qt.desktop new file mode 100644 index 0000000000..db924a0777 --- /dev/null +++ b/audio/famitracker-qt/famitracker-qt.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Type=Application +Version=1.0 +Name=FamiTracker Qt +GenericName=Music Tracker +Comment=Qt fork of FamiTracker +Path=/usr/bin +Exec=famitracker +Icon=/usr/share/pixmaps/famitracker.png +Terminal=false +Categories=Qt;AudioVideo;Audio;Midi; +Keywords=audio;tracker;chiptune; diff --git a/audio/famitracker-qt/famitracker-qt.info b/audio/famitracker-qt/famitracker-qt.info new file mode 100644 index 0000000000..5ce5159c06 --- /dev/null +++ b/audio/famitracker-qt/famitracker-qt.info @@ -0,0 +1,10 @@ +PRGNAM="famitracker-qt" +VERSION="0.4.2a" +HOMEPAGE="https://github.com/Prichman/famitracker-qt" +DOWNLOAD="https://github.com/Prichman/famitracker-qt/archive/5447136/famitracker-qt-5447136d987c63113dcb3806551632344090b7ed.tar.gz" +MD5SUM="0e0207407380320df96ce5dccbb4ae56" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="" +MAINTAINER="Bloyburt" +EMAIL="alexpen@startmail.com" diff --git a/audio/famitracker-qt/famitracker-qt.pro.patch b/audio/famitracker-qt/famitracker-qt.pro.patch new file mode 100644 index 0000000000..c5d8dc3cc9 --- /dev/null +++ b/audio/famitracker-qt/famitracker-qt.pro.patch @@ -0,0 +1,11 @@ +--- src/famitracker-qt.pro 2022-05-25 16:29:00.000000000 +0100 ++++ src2/famitracker-qt.pro 2022-09-01 16:18:39.595237722 +0100 +@@ -9,7 +9,7 @@ + TARGET = famitracker + TEMPLATE = app + +-BOOST_DIR = /home/alexander/boost ++BOOST_DIR = /usr/include/boost + + QMAKE_INCDIR += $${BOOST_DIR}/include + QMAKE_LIBDIR += $${BOOST_DIR}/lib diff --git a/audio/famitracker-qt/slack-desc b/audio/famitracker-qt/slack-desc new file mode 100644 index 0000000000..3a8e4433b7 --- /dev/null +++ b/audio/famitracker-qt/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 ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +famitracker-qt: famitracker-qt (Qt port of FamiTracker) +famitracker-qt: +famitracker-qt: FamiTracker Qt is a free cross-platform Qt fork of FamiTracker for +famitracker-qt: Linux. FamiTracker Qt is created in order to bring the popular +famitracker-qt: NES/Famicom music tracker to Linux. ALSA is the one supported audio +famitracker-qt: API. The software license is mixed GPL v2/New BSD (inherited from +famitracker-qt: FamiTracker CX). +famitracker-qt: +famitracker-qt: Homepage: https://github.com/Prichman/famitracker-qt +famitracker-qt: +famitracker-qt: