diff options
Diffstat (limited to 'network/vivaldi/vivaldi.SlackBuild')
-rw-r--r-- | network/vivaldi/vivaldi.SlackBuild | 73 |
1 files changed, 33 insertions, 40 deletions
diff --git a/network/vivaldi/vivaldi.SlackBuild b/network/vivaldi/vivaldi.SlackBuild index d3ffcf4502..0b8ba3e053 100644 --- a/network/vivaldi/vivaldi.SlackBuild +++ b/network/vivaldi/vivaldi.SlackBuild @@ -1,9 +1,10 @@ -#!/bin/sh +#!/bin/bash # # Slackware build script for vivaldi. # # Copyright 2015-2017 Edinaldo P. Silva, Rio de Janeiro, Brazil. # Copyright 2017-2019, Alexander Verbovetsky, Moscow, Russia +# Copyright 2019-2024, Ruari Oedegaard, Oslo, Norway # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,30 +24,26 @@ # 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=vivaldi -VERSION=${VERSION:-2.9.1705.41} -FFMPEG_VERSION="78.0.3904.70" -WIDEVINE_VERSION="4.10.1440.18" +VERSION=${VERSION:-6.6.3271.61} 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 -case "$ARCH" in - i?86) BITS="i386" ; WBITS="ia32" ; PBITS="x86" ;; - x86_64) BITS="amd64" ; WBITS="x64" ; PBITS="x64" ;; - arm*) BITS="armhf" ;; - *) echo "$ARCH is not supported." - exit 1 ;; -esac +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} @@ -55,22 +52,8 @@ set -e rm -rf $PKG $TMP/$PRGNAM mkdir -p $TMP/$PRGNAM $PKG $OUTPUT - cd $TMP/$PRGNAM -ar p $CWD/${PRGNAM}-stable_${VERSION}-*_${BITS}.deb data.tar.xz | tar xvJ -if [ "x$BITS" = "xarmhf" ] ; then - echo "This script doesn't support installing proprietary media codecs on ARM." -else - mkdir -p var/opt/vivaldi/WidevineCdm/_platform_specific/linux_${PBITS} - mkdir -p var/opt/vivaldi/media-codecs-${FFMPEG_VERSION} - ar p $CWD/chromium-codecs-ffmpeg-extra_${FFMPEG_VERSION}-*_${BITS}.deb \ - data.tar.xz | tar xJf - ./usr/lib/chromium-browser/libffmpeg.so --strip 4 - mv libffmpeg.so var/opt/vivaldi/media-codecs-${FFMPEG_VERSION} - unzip -oq $CWD/${WIDEVINE_VERSION}-linux-${WBITS}.zip \ - -d var/opt/vivaldi/WidevineCdm - mv var/opt/vivaldi/WidevineCdm/libwidevinecdm.so \ - var/opt/vivaldi/WidevineCdm/_platform_specific/linux_${PBITS} -fi +ar p $CWD/${PRGNAM}-stable_${VERSION}-*.deb data.tar.xz | tar xJ ./opt ./usr chown -R root:root . find -L . \ @@ -79,15 +62,26 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -rm -r opt/vivaldi/cron -rm -f opt/vivaldi/WidevineCdm -mv opt usr var $PKG/ +rm -r opt/vivaldi/cron usr/share/doc +mv opt usr $PKG/ 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 -ln -sf /opt/vivaldi/vivaldi $PKG/usr/bin/vivaldi -ln -fs /var/opt/vivaldi/WidevineCdm $PKG/opt/vivaldi/WidevineCdm +# Create relative symlinks (first removing any potentially non-relative +# ones). + +rm -f $PKG/usr/bin/vivaldi* $PKG/opt/vivaldi/WidevineCdm +ln -s ../../opt/vivaldi/vivaldi $PKG/usr/bin/vivaldi +ln -s ../../opt/vivaldi/vivaldi $PKG/usr/bin/vivaldi-stable + +# This following may appear as a broken/dangling symlink but it actually +# can be used by Vivaldi as a fallback source for Widevine in cases +# where, Google Chrome is also installed (it bundles Widevine at the +# linked location) and the components system in the browser +# (vivaldi://components) is non-functional. + +ln -s ../google/chrome/WidevineCdm $PKG/opt/vivaldi/WidevineCdm for res in 16 22 24 32 48 64 128 256; do install -Dm644 "$PKG/opt/vivaldi/product_logo_${res}.png" \ @@ -100,16 +94,15 @@ sed \ > $PKG/usr/share/applications/vivaldi.desktop rm $PKG/usr/share/applications/vivaldi-stable.desktop -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -gzip -dc $PKG/usr/share/doc/vivaldi-stable/changelog.gz > \ - $PKG/usr/doc/$PRGNAM-$VERSION/ChangeLog -rm -rf $PKG/usr/share/doc -cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README -cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +for doc in README README.SBo $PRGNAM.SlackBuild; do + install -Dm644 $CWD/$doc $PKG/usr/doc/$PRGNAM-$VERSION/$doc +done +lynx -dump file://$CWD/${VERSION}.html > $PKG/usr/doc/$PRGNAM-$VERSION/ChangeLog 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 |