From 5cd74dc6963d0c4753e64731d523cf9385ea86c7 Mon Sep 17 00:00:00 2001 From: Vijay Marcel Date: Sat, 8 Jul 2023 14:46:33 +0900 Subject: multimedia/gxine: Added (Xine GUI Frontend). Signed-off-by: Andrew Clemons Signed-off-by: Willy Sudiarto Raharjo --- multimedia/gxine/README | 5 ++ multimedia/gxine/doinst.sh | 13 ++++ multimedia/gxine/gxine.SlackBuild | 147 ++++++++++++++++++++++++++++++++++++++ multimedia/gxine/gxine.desktop | 12 ++++ multimedia/gxine/gxine.info | 10 +++ multimedia/gxine/slack-desc | 19 +++++ 6 files changed, 206 insertions(+) create mode 100644 multimedia/gxine/README create mode 100644 multimedia/gxine/doinst.sh create mode 100644 multimedia/gxine/gxine.SlackBuild create mode 100644 multimedia/gxine/gxine.desktop create mode 100644 multimedia/gxine/gxine.info create mode 100644 multimedia/gxine/slack-desc (limited to 'multimedia') diff --git a/multimedia/gxine/README b/multimedia/gxine/README new file mode 100644 index 000000000000..04c5459f4138 --- /dev/null +++ b/multimedia/gxine/README @@ -0,0 +1,5 @@ +GXine is a graphical frontend to the Xine Multimedia +player. It can play MPEG system streams [audio and video], +MPEG elementary streams such as mp3,mpa or mpv files, MPEG +transport stream, AVI,ASF,quicktime as well as (S)VCD and +DVD files. Anything Xine-lib can handle. diff --git a/multimedia/gxine/doinst.sh b/multimedia/gxine/doinst.sh new file mode 100644 index 000000000000..aea0f894eb32 --- /dev/null +++ b/multimedia/gxine/doinst.sh @@ -0,0 +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 [ -x /usr/bin/update-mime-database ]; then + /usr/bin/update-mime-database usr/share/mime >/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 -f usr/share/icons/hicolor >/dev/null 2>&1 + fi +fi diff --git a/multimedia/gxine/gxine.SlackBuild b/multimedia/gxine/gxine.SlackBuild new file mode 100644 index 000000000000..8a535c9c518e --- /dev/null +++ b/multimedia/gxine/gxine.SlackBuild @@ -0,0 +1,147 @@ +#!/bin/bash + +# Slackware build script for gxine + +# Copyright 2023 Vijay Marcel +# 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=gxine +VERSION=${VERSION:-0.5.910} +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} + +PREPROCESS="-Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS" + +HARDENING="-fexceptions -fstack-protector-strong -fstack-clash-protection -mindirect-branch=thunk -mfunction-return=thunk -mneeded -fPIE" + +SLDFLAGS="-pie -Wl,-z,relro -Wl,-z,separate-code -Wl,-z,now -Wl,-z,noexecstack -Wl,-z,defs" + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="$PREPROCESS -march=i586 -mtune=i686 -pipe -O2 -fPIC $HARDENING" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="$PREPROCESS -march=i686 -mtune=i686 -pipe -O2 -fPIC $HARDENING" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="$PREPROCESS -march=x86-64 -mtune=native -pipe -O2 -fPIC $HARDENING" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "aarch64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e +trap 'echo "$0 FAILED at line $LINENO!" | tee -a $OUTPUT/error-${PRGNAM}.log' ERR + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.xz +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 size in 64 64 ; do +convert $TMP/${PRGNAM}-${VERSION}/pixmaps/${PRGNAM}.png -resize ${size}x${size}! \ + $TMP/${PRGNAM}-${VERSION}/pixmaps/Gxine.png +done + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +LDFLAGS="$SLDFLAGS" \ +./autogen.sh \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --enable-static=no \ + --build=$ARCH-slackware-linux \ + --host=$ARCH-slackware-linux \ + --with-xcb \ + --with-x \ + --enable-watchdog \ + --disable-deprecated \ + --without-hal \ + --with-gtk3 \ + --with-gudev \ + --with-logo-format=auto + +make +make install DESTDIR=$PKG + +# Don't ship .la files: +rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/gxine/*.la + +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 + +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 + +rm -rvf $PKG/usr/share/applications/gxine.desktop +install -Dm0644 $CWD/gxine.desktop -t $PKG/usr/share/applications +rm -rvf $PKG/usr/share/icons/hicolor/64x64/apps/gxine.png +rm -rvf $PKG/usr/share/pixmaps/gxine.png +install -Dm0644 $TMP/$PRGNAM-$VERSION/pixmaps/Gxine.png -t $PKG/usr/share/pixmaps/ +install -Dm0644 $TMP/$PRGNAM-$VERSION/pixmaps/Gxine.png -t $PKG/usr/share/icons/hicolor/64x64/apps/ + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a AUTHORS ChangeLog COPYING README $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$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 diff --git a/multimedia/gxine/gxine.desktop b/multimedia/gxine/gxine.desktop new file mode 100644 index 000000000000..00dc6ecbd637 --- /dev/null +++ b/multimedia/gxine/gxine.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Name=gxine +Comment=Watch videos or TV and listen to audio in a variety of formats +GenericName=Video Player +Exec=gxine %U +X-MultipleArgs=true +Icon=Gxine +Terminal=false +Type=Application +StartupNotify=true +Categories=AudioVideo;Video;GTK;Player;TV; +MimeType=x-content/video-dvd;x-content/audio-cdda;x-content/video-vcd;x-content/video-svcd; diff --git a/multimedia/gxine/gxine.info b/multimedia/gxine/gxine.info new file mode 100644 index 000000000000..df7b85f64778 --- /dev/null +++ b/multimedia/gxine/gxine.info @@ -0,0 +1,10 @@ +PRGNAM="gxine" +VERSION="0.5.910" +HOMEPAGE="https://sourceforge.net/projects/xine" +DOWNLOAD="https://downloads.sourceforge.net/xine/gxine/gxine-0.5.910.tar.xz" +MD5SUM="33f507b1014e928799dc2fe1c755fda6" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="js185 gnome-vfs lirc" +MAINTAINER="Vijay Marcel" +EMAIL="vijaymrcel@outlook.com" diff --git a/multimedia/gxine/slack-desc b/multimedia/gxine/slack-desc new file mode 100644 index 000000000000..4ab211ce4045 --- /dev/null +++ b/multimedia/gxine/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------------------------------------------------------| +gxine: gxine (Xine GUI Frontend) +gxine: +gxine: GXine is a graphical frontend to the Xine Multimedia +gxine: player. It can play MPEG system streams [audio and video], +gxine: MPEG elementary streams such as mp3,mpa or mpv files, MPEG +gxine: transport stream, AVI,ASF,quicktime as well as (S)VCD and +gxine: DVD files. Anything Xine-lib can handle. +gxine: +gxine: Homepage:https://sourforge.net/projects/xine +gxine: +gxine: -- cgit v1.2.3