Thorium という Chromium をコンパイラの最適化などを使い,通常の Chromium に比べて 8〜38% のパフォーマンスの向上が実現できるものを知りました.
サブプロジェクトが多数あり,各種環境向けのThorium やThoriumOS, Codium などもあります.
モバイル端末の電池持ちが良くなったり,古い端末での動作が軽くなるのではないかと期待が持てます.
Thorium という Chromium をコンパイラの最適化などを使い,通常の Chromium に比べて 8〜38% のパフォーマンスの向上が実現できるものを知りました.
サブプロジェクトが多数あり,各種環境向けのThorium やThoriumOS, Codium などもあります.
モバイル端末の電池持ちが良くなったり,古い端末での動作が軽くなるのではないかと期待が持てます.
最近のウェブブラウザはとてもリソース食いです.特にメモリ.いくらあっても足りません><
軽量ウェブブラウザもありますが,機能が足りず動かないサイトが多いです.
Midori はWebKit版の頃は軽量だけど大抵のsite は動いていた記憶があります.しかしその後 Electron(Blink)ベース(Midori 10),Firefox(Gekko)ベースの Floorp ベース(Midori 11) となり重量級に.
今回 Midori WebKit版時代からのフォークのRaphael を知ったので試してみました.
とても小さく軽いグラフィカルウェブブラウザの Dillo が新しいメンテナに引き継がれ 2015年から約9年ぶりのリリースされたらしいです.
試しに手元で build してみました.
最近HTML5, CSS3, JS, videoなども閲覧可能な端末上でブラウジング出来るBrowsh
というものを知りました.
BrowshのバックエンドはFirefoxで,その画面を変換して表示しているようです.キーボード,マウスで操作できます.
Firefox -> VNC -> Browsh -> Termina/http
各種環境の単一のバイナリ(別途Firefoxが必要)や,docker imageが提供されています.arm版も用意されていますが,Firefox 57移行が必要なのでRaspberry PiのRaspbianではひと工夫要りそうです.
また,sshで体験できるようにもなっています.まずはこれで体験してみるのがお手軽で良いと思います.
$ ssh brow.sh
しかし,今日試したところ混んでいるようで繋がりませんでした(◞‸◟)
All of Browsh's servers are currently busy. Please try again soon.Shared connection to brow.sh closed.
手元で試してみます.今回は Linux Static: x64 を試しました.ちなみにv1.2.3の時はうまく動作しませんでしたが,現在のv1.3.3では動作するようになりました :)
BroushにはFOrefox 57以降が必要です.もし導入していない場合はFirefoxを導入します.そして対応バイナリを入手してchecksumを確認,実行権を付与します.
$ sudo apt install firefox$ wget https://github.com/browsh-org/browsh/releases/download/v1.3.3/browsh_1.3.3_linux_amd64 https://github.com/browsh-org/browsh/releases/download/v1.3.3/browsh_1.3.3_checksums.txt$ sha256sum -c browsh_1.3.3_checksums.txt 2>/dev/null | grep -v 'FAILED open or read'browsh_1.3.3_linux_amd64: OK$ chmod u+x browsh_1.3.3_linux_amd64
端末上で実行します.ヘッドレスでFirefoxが起動してからBrowshが利用できるようになります.
$ ./browsh_1.3.3_linux_amd64
以下のショートカットとマウス操作が可能です.
マウス操作はリンククリックだけだと思います.リンククリックもキーボードで出来ると良いのですが今のところ出来ません.issueで上がっているので出来るようになるかもしれません,
以下は手元で動かした時の表示例です.表示が崩れる場合は端末ソフトを変えるとましになったりします.
手元ではsakuraはしましまになってしまいました.以下のスクリーンショットはgnome-terminalのものです.
残念ながら現在日本語などのワイド文字には未対応です.Issueに上がっているのでそのうち直ると思います.
-http-server
オプションを使うとBrowshをhttp proxyのように他のウェブブラウザで表示結果を利用できます.この場合多少崩れますが日本語も表示できます.細い回線だけでなく古い機械のウェブブラウザや,性能の低いマシンでアクセスするのにも良さそうです.
$ ./browsh_1.3.3_linux_amd64 --help 2>&1 | grep http-server$ -A1-http-serverRun as an HTTP service$ ./browsh_1.3.3_linux_amd64 -http-server -http-server-bind 127.0.0.1
既定値では,4333ポートで利用できます.
http://127.0.0.1:4333/
任意のURLを開く場合はこのURLの後ろにアクセスしたいURLを付与します.
http://127.0.0.1:4333/https://duckduckgo.com/
2011年発売のAndroid端末のAndroidブラウザでアクセス
ちょっと崩れるけどいい感じです :)
ただ,何故かGoogle+にアクセスするとBrowshのページになってしまいます(TTYだとOK)
テキストブラウザはelinksやw3mなどありますが,最近のリッチな環境には追従できていません(JavaScript機能の入ったw3mは以前あった).フューチャーフォン時代はそちらのページを利用したりしていましたが最近はスマートフォン対応でそういったページも無くなってきています.ということでBroushのこれからに期待です.
仕組みなどがやはり端末でリモートデスクトップが利用できるtexttopに似ているなと思ってGitHubにアクセスしてみるとBroushに転送されました.同じ人が作ったもので途中からBrowshに変わったようです.
Browsh : Linux Static: x64 v1.3.3
$ lsb_release -dDescription: Debian GNU/Linux unstable (sid)$ uname -mx86_64$ dpkg-query -W firefoxfirefox 61.0-2
Vivaldi 1.14がリリースされました.
Note機能のMarkdown対応とか便利かもと以前の手順で導入しました.
依存関係が増えていたのでこんな感じで.
$ sudo dpkg -i ./vivaldi-stable_1.14.1077.41-1_armhf.deb $ sudo apt install -f $ apt show vivaldi-stable Package: vivaldi-stable:armhf Version: 1.14.1077.41-1 Status: install ok installed Priority: optional Section: web Maintainer: Vivaldi Package Composer <packager@vivaldi.com> Installed-Size: 136 MB Provides: www-browser Pre-Depends: dpkg (>= 1.14.0) Depends: ca-certificates, fonts-liberation, gconf-service, libappindicator1, libasound2 (>= 1.0.16), libatk-bridge2.0-0 (>= 2.5.3), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.16), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0), libdbus-1-3 (>= 1.2.14), libexpat1 (>= 2.0.1), libfontconfig1 (>= 2.11), libgcc1 (>= 1:3.5), libgconf-2-4 (>= 3.2.5), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.31.8), libgtk-3-0 (>= 3.9.10), libnspr4 (>= 2:4.9-2~), libnss3 (>= 2:3.22), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libx11-6 (>= 2:1.4.99.1), libx11-xcb1, libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, wget, xdg-utils (>= 1.0.2) Recommends: adobe-flashplugin, chromium-codecs-ffmpeg-extra Homepage: https://vivaldi.com Download-Size: 不明 APT-Manual-Installed: yes APT-Sources: /var/lib/dpkg/status Description: A new browser for our friends Vivaldi browser is made with power users in mind by people who love the Web. N: 追加レコードが 2 件あります。表示するには '-a' スイッチを付けてください。
早速起動しましたが動きません.
$ vivaldi ERROR: ld.so: object '/usr/lib/chromium-browser/libffmpeg.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored. /usr/bin/vivaldi: error while loading shared libraries: libffmpeg.so: cannot open shared object file: No such file or directory
Vivaldiはarmhfですが,aarch64の/usr/lib/chromium-browser/libffmpeg.so
を読み込もうとしてコケているようです.
libffmpeg.soはVivaldiにもいるよう?
$ dpkg-query -S libffmpeg.so chromium-codecs-ffmpeg-extra: /usr/lib/chromium-browser/libffmpeg.so vivaldi-stable:armhf: /opt/vivaldi/lib/libffmpeg.so $ ls -l /usr/lib/chromium-browser/libffmpeg.so /opt/vivaldi/lib/libffmpeg.so -rw-r--r-- 1 root root 1098444 1月 30 17:37 /opt/vivaldi/lib/libffmpeg.so -rw-r--r-- 1 root root 2428128 1月 27 19:51 /usr/lib/chromium-browser/libffmpeg.so $ file /opt/vivaldi/lib/libffmpeg.so /opt/vivaldi/lib/libffmpeg.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=a0c7e5c04798cdb9469a869e0b87dfe80fa85f30, stripped
LD_LIBRARY_PATHに指定してみましたがダメでした.
$ LD_LIBRARY_PATH=/opt/vivaldi/lib:$LD_LIBRARY_PATH vivaldi
chromium-codecs-ffmpeg-extra:armhf
を入れればいいのではと思ったけど排他でaarch64版が消されるのでやめました.
$ sudo apt install chromium-codecs-ffmpeg-extra:armhf パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下のパッケージが自動でインストールされましたが、もう必要とされていません: libido-0.1-0 これを削除するには 'sudo apt autoremove' を利用してください。 以下のパッケージは「削除」されます: chromium-browser chromium-browser-l10n chromium-codecs-ffmpeg-extra 以下のパッケージが新たにインストールされます: chromium-codecs-ffmpeg-extra:armhf アップグレード: 0 個、新規インストール: 1 個、 削除: 3 個、保留: 0 個。 891 kB のアーカイブを取得する必要があります。 この操作後に 192 MB のディスク容量が解放されます。 続行しますか? [Y/n]
/opt/vivaldi/vivaldi
の中を見るとファイルの存在チェックをしているのだけど,/usr/lib/$DEBARCH/oxide-qt/libffmpeg.so
とかも見ている.
これのarmhf版(oxideqt-codecs-extra:armhf
)を入れてLD_LIBRARY_PATH
に指定したら警告が出るけど起動した.(Youtubeを試すと動画を再生しようとするとエラーとなった.1.13の頃はYoutubeが見られていたのは何を使っていたのだろう?)
$ sudo apt install oxideqt-codecs-extra:armhf $ LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/oxide-qt:$LD_LIBRARY_PATH vivaldi No suitable library for HTML5 MP4 (H.264/AAC) video and MP3 audio was found, therefore only open codecs will play. For assistance on how to enable proprietary media, visit: https://help.vivaldi.com/article/html5-mp4-h-264aac-video-and-mp3-audio-support-under-linux/ [32501:32501:0201/063045.261665:ERROR:gl_implementation.cc(292)] Failed to load libGL.so.1: libGL.so.1: 共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません :
後ろのFailed to load libGL.so.1
も気になるので,libgl1-mesa-glx:armhf
を入れてとりあえず解消.
$ dpkg-query -S libGL.so.1 libgl1-mesa-glx:arm64: /usr/lib/aarch64-linux-gnu/mesa/libGL.so.1 libgl1-mesa-glx:arm64: /usr/lib/aarch64-linux-gnu/mesa/libGL.so.1.2.0 $ sudo apt install libgl1-mesa-glx:armhf
なんか1.13より動作が重くなったような気がしますがとりあえず動くようになりました.
最近Linux ARM版のVivaldiをarm64環境に入れていい感じです.
しかし,ポインティングデバイスが使いづらい端末なのでちょっと面倒.これまではAwesome wmにqutebrowserの組み合わせが主でした.この組み合わせはタイル型WM+キーボード操作に特化したウェブブラウザでマウスなどのポインティングデバイスをほとんど使わずキーボードのみで操作できていい感じでした.
Vivaldiにqutebrowserのような操作を実現できそうなVimiumを入れて試してみることに.
導入は アプリ(vivaldi://apps) にアクセスしてVimiumを検索して導入するだけ.
操作は以下のようなショートカットを使います.
リンクの指定もこの通りキーボードだけでOK
いい感じそうです :)
アプリ(vivaldi://apps) にアクセスするとChromeウェブストアへのアイコンが現れてChrome/Chromiumと 同様に拡張機能が導入できる.
Operaの共同創設者でCEOだったJon Stephenson von Tetzchnerによって設立されたVivaldi Technologiesによって開発されているウェブブラウザがあります.
これまでx86/x64プラットホームのWindows/macOS/Linux版が提供されていましたが,2017/12/05にLinux ARM版(armhf)がリリースされました.
Raspberry PiのRaspbianがメインのようですが,他のARM環境でも試したら普通に動きました :)
といってもやはりRAM512MBのようなマシンでは辛いですね.RAM2GBのマシンだと今のところいい感じそうです.Midoriやqutebrowserでうまく表示できないMastodonやgmail/Google+なども問題なく表示できますし,Chromeの拡張機能も使えます.
$ wget https://downloads.vivaldi.com/stable/vivaldi-stable_1.13.1008.34-1_armhf.deb
hashとか見当たらないけど手元ではこんな感じだった
$ md5sum vivaldi-stable_1.13.1008.34-1_armhf.deb 7515f51385a9a264ad5bb7612438aeda vivaldi-stable_1.13.1008.34-1_armhf.deb $ sha1sum vivaldi-stable_1.13.1008.34-1_armhf.deb 6b103d205f6aa7a5f3b394ba8d32dc9ca87bf0cd vivaldi-stable_1.13.1008.34-1_armhf.deb $ sha256sum vivaldi-stable_1.13.1008.34-1_armhf.deb e7af5d021bf0c2968fcf0271e8f741552e34bcf2d032318eb8ea95356067297d vivaldi-stable_1.13.1008.34-1_armhf.deb $ sha512sum vivaldi-stable_1.13.1008.34-1_armhf.deb f47f2d26e8045af9ba680129feca765cf3f9dc7ea76930071e9688ef50aa78a482b40ba5747fb4470d30520177bda371ec79e5a210a93dcf2e49251425001c6d vivaldi-stable_1.13.1008.34-1_armhf.deb
$ dpkg-deb -I ./vivaldi-stable_1.13.1008.34-1_armhf.deb 新形式 debian パッケージ、バージョン 2.0。 サイズ 45154158 バイト: コントロールアーカイブ = 9840 バイト。 1269 バイト、 16 行 control 15872 バイト、 442 行 * postinst #!/bin/sh 12544 バイト、 324 行 * postrm #!/bin/sh 1220 バイト、 42 行 * prerm #!/bin/sh Package: vivaldi-stable Version: 1.13.1008.34-1 Architecture: armhf Maintainer: Vivaldi Package Composer <packager@vivaldi.com> Installed-Size: 131921 Pre-Depends: dpkg (>= 1.14.0) Depends: gconf-service, libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.16), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0), libdbus-1-3 (>= 1.2.14), libexpat1 (>= 2.0.1), libfontconfig1 (>= 2.8.0), libgcc1 (>= 1:4.4.0), libgconf-2-4 (>= 3.2.5), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.28.0), libgtk-3-0 (>= 3.9.10), libnspr4 (>= 2:4.9-2~), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libx11-6 (>= 2:1.4.99.1), libx11-xcb1, libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, ca-certificates, fonts-liberation, libnss3 (>= 3.26), xdg-utils (>= 1.0.2), wget Recommends: adobe-flashplugin, chromium-codecs-ffmpeg-extra Conflicts: vivaldi-beta, vivaldi-preview Replaces: vivaldi-beta, vivaldi-preview Provides: www-browser Section: web Priority: optional Homepage: https://vivaldi.com Description: A new browser for our friends Vivaldi browser is made with power users in mind by people who love the Web.
とりあえずDebian jessie armhf/Ubuntu 16.04 LTS aarch64で動いている.
$ sudo dpkg -i ./vivaldi-stable_1.13.1008.34-1_armhf.deb
以下のように依存パッケージが足りない場合は,
dpkg: 依存関係の問題により vivaldi-stable:armhf の設定ができません: vivaldi-stable:armhf は以下に依存 (depends) します: libnss3 (>= 3.26)...しかし: パッケージ libnss3:armhf はまだインストールされていません。 dpkg: パッケージ vivaldi-stable:armhf の処理中にエラーが発生しました (--install): 依存関係の問題 - 設定を見送ります
こんな感じで足りないpkgが入るはず.その後見送られていたvivaldi-stableの設定の続きも実行される.
$ sudo apt install -f
aarch64でも試した.
既にadd archtecture armhfして色々入れていた環境に入れてクリーンな環境で検証していないけど多分こんな感じ.
$ sudo dpkg --add-architecture armhf $ sudo apt update $ sudo dpkg -i ./vivaldi-stable_1.13.1008.34-1_armhf.deb $ sudo apt install -f
—-追記—-
クリーンなDragonBoard 410cにDebian stretch aarch64(lonaro)を入れた環境でも確認したがこの手順でokだった :)
—-追記終わり—-
deb以外の環境ではこんな感じで適当な場所に展開して動かせた.
$ mkdir -p ~/opt/vivaldi
$ ar p vivaldi-stable_1.13.1008.34-1_armhf.deb data.tar.xz | tar xJ -C ~/opt/vivaldi
$ rm vivaldi-stable_1.13.1008.34-1_armhf.deb
$ ~/opt/vivaldi/opt/vivaldi/vivaldi
Slackwareだと以下のsctiptが使えそう(未確認)
もし,こんなエラーが出たら
$ ~/opt/vivaldi/opt/vivaldi/vivaldi [13021:13021:1205/215600.516642: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 /home/matoken/opt/vivaldi/opt/vivaldi/vivaldi-sandbox is owned by root and has mode 4755. Aborted[This script will find the latest Vivaldi binary package, download it and repackage it into Slackware format.](https://gist.github.com/ruario/dcbba70da900dac68fcc883542ff7ace "This script will find the latest Vivaldi binary package, download it and repackage it into Slackware format.")
こんな感じでオーナーとパーミッションを設定したらok.
$ chmod 4755 ~/opt/vivaldi/opt/vivaldi/vivaldi-sandbox
$ sudo chown root.root ~/opt/vivaldi/opt/vivaldi/vivaldi-sandbox
若しくは --no-sandbox
option
$ ~/opt/vivaldi/opt/vivaldi/vivaldi --no-sandbox
とりあえず適当な日本語フォント(今回はVLゴシック)を入れて,Vivaldiを再起動で直った.(Dejavuが入っていたので指定してみたけど直らなかった)
$ sudo apt install fonts-vlgothic