Chawanというターミナルウェブブラウザを知りました.
メモリセーフなNimで実装されていてライセンスはパブリックドメインです.
同じようにターミナル上で動作するw3mやLynx系との大きな違いはJavaScriptやCSSに対応している辺りでしょうか.SixelやKittyのターミナル画像形式にも対応しています.
少し試してみました.
Chawanというターミナルウェブブラウザを知りました.
メモリセーフなNimで実装されていてライセンスはパブリックドメインです.
同じようにターミナル上で動作するw3mやLynx系との大きな違いはJavaScriptやCSSに対応している辺りでしょうか.SixelやKittyのターミナル画像形式にも対応しています.
少し試してみました.
先日USER-AGENTによりJavaScript無しでGoogle検索が出来る記事を書きました.
自分だけならこれでいいのですが,他の人にこれをやってもらうのは大変.Startpageなんかを使ってもらえばとか思いましたが自分の環境では現在エラーが出て利用できません.
久々にGoogle検索のプロキシサーバ的なWoogle Searchを試してみました.
Google検索がJavaScript offで動かなくなったと聞いてFirefox+NoScript環境で試してみると確かに駄目.
更に http://www.google.com/httpservice/retry/enablejs にリダイレクトされて検索キーワードが消えてとても不便.
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と 同様に拡張機能が導入できる.