diff options
Diffstat (limited to 'network/vivaldi')
-rw-r--r-- | network/vivaldi/README | 9 | ||||
-rw-r--r-- | network/vivaldi/README.SBo | 40 | ||||
-rw-r--r-- | network/vivaldi/douninst.sh | 11 | ||||
-rw-r--r-- | network/vivaldi/slack-desc | 8 | ||||
-rw-r--r-- | network/vivaldi/vivaldi.SlackBuild | 70 | ||||
-rw-r--r-- | network/vivaldi/vivaldi.info | 18 |
6 files changed, 95 insertions, 61 deletions
diff --git a/network/vivaldi/README b/network/vivaldi/README index 011f935eb1..a6b095a1b1 100644 --- a/network/vivaldi/README +++ b/network/vivaldi/README @@ -1,8 +1,7 @@ vivaldi (web browser). -A Browser for Our Friends. An advanced browser made with the power user -in mind. Finally you can surf your way. +Experience the web in a whole new way with Vivaldi. -Vivaldi for ARM/ARM64 can be downloaded from: - - https://vivaldi.com/download/archive +Vivaldi is a browser that has the features you need, a style that fits +and values you can stand by. Your browser matters. Take control with +Vivaldi. diff --git a/network/vivaldi/README.SBo b/network/vivaldi/README.SBo index 13e8edce7d..91f83743fa 100644 --- a/network/vivaldi/README.SBo +++ b/network/vivaldi/README.SBo @@ -1,4 +1,38 @@ -This SlackBuild used to support a variable CUSTOM_CSS that made it -possible to customize the user interface using a css file. +# Proprietary media support -Now the same can be done via vivaldi://experiments/ +Vivaldi does not directly bundle any library with support for +"proprietary media" (H.264/AAC), since this would make redistribution of +the output package difficult (due to software patent licensing). +Instead, the script '/opt/vivaldi/update-ffmpeg' fetches a suitable lib +from a third party (and verifies it). This can be run in two ways. + +## System-wide install + +The recommended method is for the user to run it as root (with no +arguments) immediately after installing (or upgrading) Vivaldi, but +before first run. The file will then be placed in '/var/opt/vivaldi' and +found by Vivaldi when you launch it afterwards. + +Files installed this way will even be cleaned up automatically on +uninstall by 'douninst.sh'. Alternatively running 'update-ffmpeg' again +(as root) with '--undo' will also remove the lib and associated +directories. + +## Per-user install + +If you do not run the 'update-ffmpeg' as root before first run, Vivaldi +will call this script itself, automatically on first launch (with the +option '--user'). In this case the lib will be installed into +'~/.local/lib/vivaldi' (for each user who launches Vivaldi) and will +then be available, from the next restart (of the browser). + +If you wish to remove the file from '~/.local/lib/vivaldi', you can run +'update-ffmpeg' as follows: + + /opt/vivaldi/update-ffmpeg --user --undo + +Alternatively look in '~/.local/lib/vivaldi' and remove the files +manually. + +NOTE: Keep in mind the lib will be automatically reinstalled in +'~/.local/lib/vivaldi' if any user on the system launches Vivaldi again. diff --git a/network/vivaldi/douninst.sh b/network/vivaldi/douninst.sh new file mode 100644 index 0000000000..879cbcec64 --- /dev/null +++ b/network/vivaldi/douninst.sh @@ -0,0 +1,11 @@ +# Remove any lib fetched by '/opt/vivaldi/update-ffmpeg' that was +# installed system-wide into '/var/opt' +rm -f /var/opt/vivaldi/media-codecs-*/libffmpeg.so +if [ -d /var/opt/vivaldi ]; then + # This removes directory trees that are empty or only populated by other + # empty directories. + find /var/opt/vivaldi -depth -type d -empty -exec rmdir {} \; + # '/var/opt' is not part of the default Slackware install, so we will + # remove it, if it is now empty (following the above). + rmdir --ignore-fail-on-non-empty /var/opt +fi diff --git a/network/vivaldi/slack-desc b/network/vivaldi/slack-desc index fb2335b9c7..9d1efaa13e 100644 --- a/network/vivaldi/slack-desc +++ b/network/vivaldi/slack-desc @@ -8,12 +8,12 @@ |-----handy-ruler------------------------------------------------------| vivaldi: vivaldi (web browser) vivaldi: -vivaldi: A Browser for Our Friends. +vivaldi: Experience the web in a whole new way with Vivaldi. vivaldi: -vivaldi: An advanced browser made with the power user in mind. Finally you -vivaldi: can surf your way. +vivaldi: Vivaldi is a browser that has the features you need, a style that fits +vivaldi: and values you can stand by. Your browser matters. Take control with +vivaldi: Vivaldi. vivaldi: vivaldi: Home Page: https://vivaldi.com vivaldi: vivaldi: -vivaldi: diff --git a/network/vivaldi/vivaldi.SlackBuild b/network/vivaldi/vivaldi.SlackBuild index 094f1848b3..0b8ba3e053 100644 --- a/network/vivaldi/vivaldi.SlackBuild +++ b/network/vivaldi/vivaldi.SlackBuild @@ -1,10 +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-2021, Ruari Oedegaard, Oslo, Norway +# Copyright 2019-2024, Ruari Oedegaard, Oslo, Norway # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -24,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:-3.6.2165.36} -FFMPEG_VERSION="87.0.4280.66" -WIDEVINE_VERSION="4.10.1582.2" +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} @@ -57,21 +53,7 @@ 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 ./opt ./usr -ar p $CWD/chromium-codecs-ffmpeg-extra_${FFMPEG_VERSION}-*_${BITS}.deb \ - data.tar.xz | tar xOJ ./usr/lib/chromium-browser/libffmpeg.so \ - > opt/vivaldi/libffmpeg.so.${VERSION%\.*\.*} - -if [ "x$BITS" = "xarmhf" ] ; then - echo "This script doesn't support installing Widevine on ARM." -elif [ "x$BITS" = "xi386" ] ; then - rm -f opt/vivaldi/WidevineCdm - mkdir -p opt/vivaldi/WidevineCdm/_platform_specific/linux_${PBITS} - unzip -oq $CWD/${WIDEVINE_VERSION}-linux-${WBITS}.zip \ - -d opt/vivaldi/WidevineCdm - mv opt/vivaldi/WidevineCdm/libwidevinecdm.so \ - 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 . \ @@ -80,13 +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 -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 +# 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" \ @@ -99,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 diff --git a/network/vivaldi/vivaldi.info b/network/vivaldi/vivaldi.info index 7c44886add..2dddcfae85 100644 --- a/network/vivaldi/vivaldi.info +++ b/network/vivaldi/vivaldi.info @@ -1,16 +1,12 @@ PRGNAM="vivaldi" -VERSION="3.6.2165.36" +VERSION="6.6.3271.61" HOMEPAGE="https://vivaldi.com" -DOWNLOAD="https://downloads.vivaldi.com/stable/vivaldi-stable_3.6.2165.36-1_i386.deb \ - https://launchpadlibrarian.net/507638697/chromium-codecs-ffmpeg-extra_87.0.4280.66-0ubuntu0.16.04.1_i386.deb \ - https://dl.google.com/widevine-cdm/4.10.1582.2-linux-ia32.zip" -MD5SUM="1420ce17875cc70263cc0283061b76e1 \ - 1deb6d72767d3d01a21d34b49cd85263 \ - 247a331a4d5bceb9f20366a39136a4fa" -DOWNLOAD_x86_64="https://downloads.vivaldi.com/stable/vivaldi-stable_3.6.2165.36-1_amd64.deb \ - https://launchpadlibrarian.net/507640811/chromium-codecs-ffmpeg-extra_87.0.4280.66-0ubuntu0.16.04.1_amd64.deb" -MD5SUM_x86_64="fbac551f1fead80f650dd34a20add6ab \ - 6e530490e349daade1f6b0ee0b3ee4dc" +DOWNLOAD="UNSUPPORTED" +MD5SUM="" +DOWNLOAD_x86_64="https://downloads.vivaldi.com/stable/vivaldi-stable_6.6.3271.61-1_amd64.deb \ + https://update.vivaldi.com/update/1.0/relnotes/6.6.3271.61.html" +MD5SUM_x86_64="8f5399008b3ce407841768b2e88d84cf \ + 5dcbd276bf780eb1106b8ac254e2a223" REQUIRES="" MAINTAINER="Ruari Oedegaard" EMAIL="sbo@ruari.com" |