LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware - ARM (https://www.linuxquestions.org/questions/slackware-arm-108/)
-   -   Vivaldi for ARM, does it run? (https://www.linuxquestions.org/questions/slackware-arm-108/vivaldi-for-arm-does-it-run-4175619002/)

ruario 12-05-2017 06:15 AM

Vivaldi for ARM, does it run?
 
I finally got around to making a latest-vivaldi script to complement my latest-chrome and latest-firefox scripts. When I did it I added some references to ARM that nobody seemed to pick up on ;)

Anyway, today we finally released a version of Vivaldi for ARMv7 with hardware floating point.

The FAQ in this forum mentions that Slackware ARM -current is hardware floating point based, though I must admit I have never actually tried running Vivaldi under Slackware ARM. Is there anyone here, running -current with a recent board or device, who could try it for me?

If you want a package, for now you need to set the VERSION variable (since the script normally queries are deb repo to get the version number and that does not yet have ARM builds in it):

Code:

$ VERSION=1.13.1008.34-1 ./latest-vivaldi.sh
Or if you don't want to install. Extract the contents, like so:

Code:

ar p vivaldi-stable_1.13.1008.34-1_armhf.deb data.tar.xz | tar Jx ./opt/vivaldi --strip 2
And then run it as follows:

Code:

vivaldi/vivaldi&
The dependencies should be the same as a recent Chromium (on which we are based).

P.S. If nobody wants to try, no problem. I shall get aorund to it myself eventually and post back!

titopoquito 12-13-2017 11:16 AM

Quote:

Originally Posted by ruario (Post 5789127)
I finally got around to making a latest-vivaldi script to complement my latest-chrome and latest-firefox scripts. When I did it I added some references to ARM that nobody seemed to pick up on ;)

Anyway, today we finally released a version of Vivaldi for ARMv7 with hardware floating point.

The FAQ in this forum mentions that Slackware ARM -current is hardware floating point based, though I must admit I have never actually tried running Vivaldi under Slackware ARM. Is there anyone here, running -current with a recent board or device, who could try it for me?

[...]

The dependencies should be the same as a recent Chromium (on which we are based).

P.S. If nobody wants to try, no problem. I shall get aorund to it myself eventually and post back!

Hi Ruarí, I just installed it (no other dependencies) and it basically works. I surfed to three different websites, and the text and images appeared. It also played a video on youtube.com, but not (which I guess doesn't come as a surprise) videos on the other websites, one of them obviously flash format, the other one I don't know.
Takes some time and the youtube video was lagging a little bit, but I have told my Raspberry Pi 3 to use the lowest available clocking, might be that this is the culprit. The accompaning sound was no problem at all.

If you have any question, feel free to post it. I hope I find the time to answer it quickly.

Cheers and thanks for your work on this :)

ruario 12-19-2017 06:08 AM

Thanks so much for this titopoquito. I really appreciate the confirmation!

Quote:

Originally Posted by titopoquito (Post 5792705)
It also played a video on youtube.com, but not (which I guess doesn't come as a surprise) videos on the other websites, one of them obviously flash format, the other one I don't know.

I suspect some of those videos are MP4 (H.264/AAC), which is what we refer to as “proprietary” HTML5 media. We do not ship a library that handles this due to patent issues. That said, Ubuntu has a patent license and we can optionally use the custom libffmpeg.so they produce for their Chromium. If you want to try this, fetch it like so:

Code:

wget http://ports.ubuntu.com/ubuntu-ports/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_63.0.3239.84-0ubuntu0.16.04.1_armhf.deb
Extract out the lib:

Code:

ar p chromium-codecs-ffmpeg-extra_63.0.3239.84-0ubuntu0.16.04.1_armhf.deb data.tar.xz | tar Jx ./usr/lib/chromium-browser/libffmpeg.so --strip 4
And install it into this directory, where Vivaldi will look for an alternative lib:

Code:

install -Dm644 libffmpeg.so "$HOME/.local/lib/vivaldi/libffmpeg.so"
Now when you restart Vivaldi next, you should have support for MP4 (H.264/AAC) videos. You can even check this via this test page (the first video should now play).

ruario 12-20-2017 07:42 AM

Actually, some of the other vidoes that don't play could either be DRM'd proprietary media or perhaps Flash. I spent a bit of time playing around and realised you could get both or these working. I put a little guide on our help page.

In theory, you should be able to play stuff like Netflix but the Raspberry Pi I am using cannot quite manage it. I suspect that disk speed is one of the main stumbling blocks. I am just using an SD card. I wonder if I ran from an external disk, if that might work better.

P.S. If anyone wants to try Netflix themselves, first install support for proprietary media and widevine and fake your user agent to be a x86_64 version of Chrome.

dreadbit 12-20-2017 04:25 PM

Hello Ruarí,
thanks for arm build.
I've tried it on -current on Toshiba AC100 and - just like firefox before, discussed on this forum - it failed with "Invalid Instruction".

It runs fine on Banana PI.

ruario 12-21-2017 04:18 AM

Quote:

Originally Posted by dreadbit (Post 5795752)
Hello Ruarí,
thanks for arm build.
I've tried it on -current on Toshiba AC100 and - just like firefox before, discussed on this forum - it failed with "Invalid Instruction".

It runs fine on Banana PI.

Thanks for the feedback!

Quote:

Originally Posted by ruario (Post 5795446)
In theory, you should be able to play stuff like Netflix but the Raspberry Pi I am using cannot quite manage it.


Ok, I realised that this is possible if I use an extension to change the user agent to a ChromeOS User Agent (e.g. “Mozilla/5.0 (X11; CrOS armv7l 9901.77.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.97 Safari/537.36”) then Netflix presents me with a lower quality stream. Whilst it does play it is not a pleasent veiwing experience and there are lots of dropped frames. On a more powerful device it might be workable however and it is a nice confirmation that both proprietary media and Widevine EME are working if you get them from the relevant sources. I have updated our tips page to reflect this.

slackartist 12-22-2017 08:49 AM

running this on the chromebook but it didnt launch also as root

$ ./vivaldi
[1793:1793:1219/003007.145511:FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /opt/vivaldi/vivaldi-sandbox is owned by root and has mode 4755.
Aborted

-rwxr-xr-x 1 root root 13988 Nov 30 10:46 vivaldi-sandbox

$ ./vivaldi
[1817:1881:1219/003137.565638:FATAL:nss_util.cc(632)] NSS_VersionCheck("3.26") failed. NSS >= 3.26 is required. Please upgrade to the latest NSS, and if you still get this error, contact your distribution maintainer.
Aborted

$ ls /var/log/packages/mozilla-nss-3.34-arm-1

$ vivaldi-stable --version
Vivaldi 1.13.1008.34

https://forum.vivaldi.net/topic/2178...-won-t-open/22

bit of mystery

slackartist 09-05-2018 03:28 PM

allright
 
so since I ve been upgrading packages on this laptop and went all the way to firefox 60 its just a black and white browser now so I took it off.

luckily vivaldi cam e to save the day.. it looks to be the same version you posted
and also just only runs as root

https://pastebin.com/8cmBV7zu
Code:

#!/bin/sh
#
# Slackware build script for vivaldi.
#
# Copyright 2015-2017  Edinaldo P. Silva, Rio de Janeiro, Brazil.
# Copyright 2017-2018, Alexander Verbovetsky, Moscow, Russia
# 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.

PRGNAM=vivaldi
VERSION=${VERSION:-1.14.1077.55}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}

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" ;;
  x86_64) BITS="amd64" ;;
    arm*) BITS="armhf" ;;
      *) echo "$ARCH is not supported."
          exit 1 ;;
esac

CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
#PKG=$TMP/package-$PRGNAM
PKG=$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

set -e

rm -rf $PKG $TMP/$PRGNAM
mkdir -p $TMP/$PRGNAM $PKG $OUTPUT

cd $TMP/$PRGNAM
tar xvf $CWD/${PRGNAM}-stable_${VERSION}_${BITS}.tar.gz
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 {} \;
cd $TMP
rm -r /tmp/SBo/vivaldi/$PKG-stable_${VERSION}_${BITS}/opt/vivaldi/cron
mv vivaldi/vivaldi-stable_1.13.1008.34-1_armhf/opt vivaldi/vivaldi-stable_1.13.1008.34-1_armhf/usr $PKG/

[ "${CUSTOM_CSS:-no}" != "no" ] && \
  sed -i 's/^\([\ ]*<link.*\)common\(\.css.*\)$/\1common\2\n\1custom\2/' \
    $PKG/opt/vivaldi/resources/vivaldi/browser.html

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

for res in 16 22 24 32 48 64 128 256; do
  install -Dm644 "$PKG/opt/vivaldi/product_logo_${res}.png" \
"$PKG/usr/share/icons/hicolor/${res}x${res}/apps/vivaldi.png"
done

sed \
  -e "s|vivaldi-stable|vivaldi|" \
  $PKG/usr/share/applications/vivaldi-stable.desktop \
  > $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

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:-tgz}

Code:

wget https://downloads.vivaldi.com/stable/vivaldi-stable_1.13.1008.34-1_armhf.deb
even trying to run as user, ah the permission in /opt/vivaldi looks to be all correct so I'm not sure but should be ok.

stormtracknole 09-14-2018 06:17 PM

Hi ruario,

I was able to test it on a Raspberry Pi 3 B+ and it works just fine. Only issue that I'm having is that I can't get the ffmpeg/h264 plugin to work. When I try to open a video, I just get an icon and nothing plays. Any ideas? Thank you for doing this.

stormtracknole 09-15-2018 08:13 AM

I tried using the latest package:

Code:

chromium-codecs-ffmpeg-extra_69.0.3497.92-0ubuntu1_armhf.deb
And when I go to the test page, the only one that doesn't work is h264. When I start it using the command line, I get this warning:
Code:

No suitable library for HTML5 MP4 (H.264/AAC) video and MP3 audio was
found, therefore only open codecs will play.

Not sure if I'm missing a step here.

ruario 09-15-2018 08:20 AM

I would use the .deb from 16.04 as the one you linked to will probably have unsatisfied dependencies since it is built on a distro with a newer glibc. Try this:

Code:

wget http://ports.ubuntu.com/ubuntu-ports/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_69.0.3497.81-0ubuntu0.16.04.1_armhf.deb
ar p chromium-codecs-ffmpeg-extra_69.0.3497.81-0ubuntu0.16.04.1_armhf.deb data.tar.xz | tar Jx ./usr/lib/chromium-browser/libffmpeg.so --strip 4
install -Dm644 libffmpeg.so "$HOME/.local/lib/vivaldi/libffmpeg.so"

EDIT: I fixed the script here to work with arm as I see I was detecting the arch wrongly before. So you can just use that now if you want the steps done for you.

stormtracknole 09-15-2018 03:21 PM

Quote:

Originally Posted by ruario (Post 5903647)
I would use the .deb from 16.04 as the one you linked to will probably have unsatisfied dependencies since it is built on a distro with a newer glibc. Try this:

Code:

wget http://ports.ubuntu.com/ubuntu-ports/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_69.0.3497.81-0ubuntu0.16.04.1_armhf.deb
ar p chromium-codecs-ffmpeg-extra_69.0.3497.81-0ubuntu0.16.04.1_armhf.deb data.tar.xz | tar Jx ./usr/lib/chromium-browser/libffmpeg.so --strip 4
install -Dm644 libffmpeg.so "$HOME/.local/lib/vivaldi/libffmpeg.so"

EDIT: I fixed the script here to work with arm as I see I was detecting the arch wrongly before. So you can just use that now if you want the steps done for you.

I tried your script and I no longer get the warning on the command line. However, when I go to the quirksmode site to test it, it goes into a black screen with an icon in the middle that looks like a dead bird?

ruario 09-17-2018 07:42 AM

strange but I have an idea. try this https://downloads.vivaldi.com/snapsh....3-2_armhf.deb

stormtracknole 09-17-2018 11:28 AM

Quote:

Originally Posted by ruario (Post 5904363)
strange but I have an idea. try this https://downloads.vivaldi.com/snapsh....3-2_armhf.deb

I got a 404 error file not found.

ruario 09-18-2018 04:49 AM

ah yes…

https://downloads.vivaldi.com/snapsh....3-2_armhf.deb


All times are GMT -5. The time now is 04:33 AM.