Linux ARM版Vivaldiを入れてみた

20171207_01:12:04-24154

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の拡張機能も使えます.

Linux ARM版Vivaldiの入手と確認

deb pkgダウンロード

$ wget https://downloads.vivaldi.com/stable/vivaldi-stable_1.13.1008.34-1_armhf.deb

hash

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で動いている.

Debian/Ubuntu等

$ 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

64bit ARM環境

バージョン情報_009

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が使えない環境

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が使えそう(未確認)

問題

sandbox

もし,こんなエラーが出たら

$ ~/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

日本語豆腐問題

20171206_06:12:20-506920171206_07:12:16-6600

とりあえず適当な日本語フォント(今回はVLゴシック)を入れて,Vivaldiを再起動で直った.(Dejavuが入っていたので指定してみたけど直らなかった)

$ sudo apt install fonts-vlgothic

関連

Googleドライブの写真を高画質に変換して容量を開放するメモ

Selection_006

Googleドライブの容量はほとんどgmailに利用しているのですが,たまに画像をアップロードしてしまい容量をいっぱいにしてしまいます.
画像サイズを小さく(現在は16MP以下)すると画像の容量がカウントされないのですが,サイズをオーバーしている画像を探して小さくするのはあまり現実的ではないです.
設定から自動的に縮小する方法があるのですが毎回やり方検索するのでメモしておきます.

設定 – Google フォト (https://photos.google.com/settings)

「アップロード サイズ(ウェブ上でアップロードする写真と動画のみ)
高画質 (容量制限なし、無料)」にチェックして
「容量を開放」でokです.数時間後には処理が終わっていると思います.

以下のページが参考になります.

容量を節約するために、写真が圧縮されます。写真のサイズが 16 MP を上回る場合は、16 MP まで縮小されます。
サイズが 16 MP の写真は、最大で約 61.0 cm x 40.6 cm まで高画質で印刷できます。
動画の解像度が 1080p を上回る場合は、1080p(高画質)まで縮小されます。動画の解像度が 1080p 以下の場合、保存された動画と元の動画の見た目の違いはほとんど生じません。

その他,
ドライブ ストレージ(https://drive.google.com/u/0/settings/storage?hl=ja)
にアクセスするとストレージの詳細が確認できます.

clipitが動かなくなっていた

clipit

暫く前からDebian sid amd64環境のclipit(クリップボード・マネージャ)が動かなくなっていました.
端末で実行するとこんな感じ

$ clipit

(clipit:23553): GLib-ERROR **: ../../../../glib/gmem.c:100: failed to allocate 18446744071610537348 bytes
Trace/breakpoint trap

sidだしなんか一時的におかしくなってるのかなととりあえず放置してたんですが暫く経っても直らない.バグレポ見るとこんな感じでそれらしいバグは見当たりません.

Querying Debian BTS for reports on clipit (source)...
7 bug reports found:

Bugs with severity important
  1) #679488  abuses xdg/autostart to get started and cannot be disabled
Bugs with severity normal
  2) #721007  clipit: Wakes up too many times per second and prevents deep sleep of cpu
  3) #771200  clipit: cannot edit 'actions'
  4) #819496  clipit clipboard history is *world* readable
Bugs with severity minor
  5) #658533  clipit: static item ordering
Bugs with severity wishlist
  6) #658532  clipit: manage history items in list view
  7) #875903  clipit: please choose a sensible default in "live" mode?

自分の環境がおかしいのか?ととりあえず設定ファイルを探すとこれのよう.

  • ~/.config/clipit/clipitrc

試しにこのファイルを退避してclipitを実行すると普通に起動しました.
てことで設定ファイルあ壊れていたようです(◞‸◟)

暫く前にinodeあふれさせてしまったのでそのときに壊れたのかもです.

Raspbian jessieのntp設定

Raspbianにntpdやchronyやntpdateとか居ないけど何が面倒見てるんだろうてことで確認.
systemdが面倒見ててtimeatectlコマンドで確認設定ができるらしい.

$ dpkg -l|egrep -i "ntp|chrony"
$ systemctl -a | grep -i ntp

今の状態を確認

$ timedatectl status
      Local time: Wed 2017-10-25 02:01:14 JST
  Universal time: Tue 2017-10-24 17:01:14 UTC
        RTC time: n/a
       Time zone: Asia/Tokyo (JST, +0900)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: no

NTP同期を無効にしてみる

$ sudo timedatectl set-ntp false

無効になった( Network time on: no )
再起動すると NTP synchronizedno にもなる.

$ timedatectl status
      Local time: Wed 2017-10-25 02:01:39 JST
  Universal time: Tue 2017-10-24 17:01:39 UTC
        RTC time: n/a
       Time zone: Asia/Tokyo (JST, +0900)
 Network time on: no
NTP synchronized: yes
 RTC in local TZ: no

おまけ

タイムゾーンの確認

$ timedatectl list-timezones | grep -i tokyo
Asia/Tokyo

タイムゾーンの設定

$ sudo timedatectl set-timezone

任意のntp serverの指定

dhcpdから渡ってきたもの.

hdcpdに無い場合 /etc/systemd/timesyncd.conf
NTPFallbackNTP

環境

Raspbian stretch lite 2017-09-07(未update)

$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description:    Raspbian GNU/Linux 9.1 (stretch)
Release:        9.1
Codename:       stretch
$ uname -a
Linux raspberrypi 4.9.41+ #1023 Tue Aug 8 15:47:12 BST 2017 armv6l GNU/Linux

Python Boot CampテキストをUbuntu 16.04 LTSで試す

2017.10で告知のあった「Python Boot Camp in 鹿児島」で使う「Python Boot Campテキスト」を見るとLinuxはUbuntu 17.04 serverがターゲットになっている

1. Pythonをはじめる前に — Python Boot Camp Text 2016.04.28 ドキュメント

1.3.3. Linux (Ubuntu Server) での場合
ここではLinuxとしてUbuntu 17.04にPython3.6をインストールする方法を説明します。

LTSのDesktop使いたい人も居るだろうなとUbuntu 16.04 LTS arm64で一通り確認してみた

「1.3.3. Linux (Ubuntu Server) での場合」のPython導入は以下のように3.5に変更

$ sudo apt update && sudo apt upgrade -y
$ sudo apt -y install python3.5 python3.5-dev python3.5-venv
$ python3.5 -V
Python 3.5.2

「5.1.2. ファイルへの書き込み」でファイルの確認前にflushしないとファイルが空

>>> f.flush()

「5.1.5. 追記モードでの書き込み」でファイルの確認前にflushしないとファイルが更新されない

>>> f.flush()

後は問題無さそう

Debianの場合もstable(stretch)では同じだと思う.Python 3.6はtesting(Buster)以降になるみたい(未確認)

このチュートリアルはBeautifulSoupまでやるので例えばcalibrでニュースサイトをスクレイピングしてKindleに自動転送といったようなレシピも書けるようになりますね :)

鹿児島Linux勉強会 2017.10に参加

鹿児島らぐ鹿児島Linux勉強会 2017.10に参加してきました.

日時

2017-10-14(土) 14:00-17:00(準備撤収時間を含む)

会場

モノづくりスペース TUKUDDO
http://tukuddo.com/

例によって自転車でポタポタと桜島フェリー経由で移動.

火山灰や雨が心配でしたが,往路はどちらも問題なく快適でした.
フェリーでメールチェックをするとパケットが250MBを切ったとのメールが.確認すると残り54MB!想定外の減り方です.
確認するとIFTTTの写真連携がmobileで有効になっていたのが原因でした…….

フェリーで渡った後はイルカ眺めてはなまるうどんでかけうんどん食べて中町自転車等駐輪場に駐輪.ジュンク堂書店に寄って,ACアダプタを忘れたのでダイソーアオヤマで
200円のAC-USB変換を購入(会場の電源タップについていたのでいらなかった)
ダイソーアオヤマでは先月売っていた500円のLipoモバイルバッテリーは売り切れていて,300円の1860入りモバイルバッテリーは在庫豊富でした.
丸善とアニメイトも行きたかったけど時間がなくて断念.会場のTUKUDDOへ.

TUKUDDOでは電源アダプタとプロジェクタの用意.ここはプロジェクタにChromeCastが繋がっているので発表者が変わるたびにケーブルを繋ぎ直したりしなくていいので便利
です :)

参加者は途中参加者を含めて6人.内新規の方が1名いらっしゃいました.

発表内容は,

その他相談として,

などがありました.

自分の発表もう少し伸ばした方が良かったかもと思いつつ脱線しながら時間潰せました.
次回の日程の希望日は特に出ず,早く決めて欲しいという意見が.
とりあえずASNARO-2(イプシロン)打ち上げが延期になったので11/11(Sat)かなーとか言いつつ解散でした.

自分は自転車を回収して県立図書館で本を2冊借りて(キャリアつけ忘れたので少なめに)ニシムタに寄って垂水フェリー経由で帰宅しました.
垂水から雨と風が強くてちょっと難儀しました.雨風は自転車には辛いですね.

次回の情報などはSiteやMLで確認してください.

Vulsの特集あり

let’s encryptの更新が失敗して困る

$ sudo letsencrypt renew

2017-10-19 06:59:12,982:WARNING:letsencrypt.cli:Attempting to renew cert from /etc/letsencrypt/renewal/example.com.conf produced an unexpected error: 'server'. Skipping.

のようなエラーで証明書が更新できなかった. 他の設定ファイルに比べて容量が少ない.

$ ls -lA /etc/letsencrypt/renewal/
合計 20
-rw-r--r-- 1 root root 1873 10月 17 13:44 example2.com.conf
-rw-r--r-- 1 root root  483  7月 19 03:10 example.com.conf

設定ファイルに

server = https://acme-v01.api.letsencrypt.org/directory
config_file = None

をファイル末尾に追記して再度renewしたら通った

AndroidのIFTTTでFlickrカメラアプレット

IFTTTでFlickrにUpするカメラアプレットの設定メモです.
作成したカメラウィジットで撮影すると即FlickrにUpされます.

IFTTTのレシピを公開すればいいだろうとどうすれば公開できるのだろうと調べようとしたら,

> 調べてみると2016年秋頃から、一般ユーザーはApplet(レシピ)の公開ができなくなっていた

[N] 【IFTTT】ユーザーが作ったApplet(レシピ)は公開(publish)できなくなった]

てことでわかりにくいでしょうが…….

– https://ifttt.com/my_applets にアクセス
– New Applet
– +this -> Camera widget
– Choose trigger -> Any new photo
– that -> Flickr
– Choose action -> Upload public photo from URL
– Complete action fields -> Create action
– Finish

後は,ターゲットのAndroid端末でウィジットの追加を行います.IFTTTのウィジットを選んで,

IFTTT to Flickr

IFTTTのウィジット一覧から作成したウィジットを選択

IFTTT to Flickr

するとFlickrなアイコンが出来ます.

IFTTT to Flickr

後はこのアイコンをタップするとカメラアプリが起動するので撮影して左上の☓をクリックするとFlickrへアップロードされます.
カメラアプリ起動時に複数枚撮影も可能.このときは撮影枚数毎に上の方に半透明の●が表示されます.
バックキーでカメラアプリを終了させても撮影済みだとアップロードされます.

ただこのカメラアプリは設定がフラッシュとリヤフロントのカメラ切り替えしか無いようで解像度選択,画質,EV,ジオタグ付与辺りが欲しいところです.

てことで結局これはあまり使わず他のカメラアプリで撮影後アップロードしています…….

radikoのAndroidアプリが起動しなくて困る

radikoというラジオをPCやスマートフォンで視聴できるサービスがあります.

スマートフォンを初期化したのでAndroid版の公式アプリを導入して起動しようとするとすぐに終了してしまいました.
地域判定中のメッセージのあと終了してしまいます.

FAQに何か載っていないか探してみました.

音声が途切れる、繋がらない(Android) | radiko.jp ヘルプ

一時的な回線の混雑や聴取場所のネットワークの状態(キャリア回線およびWi-Fi)、通信業者のパケット制限の影響等の原因が考えられます。
以下をお試しください。
・端末の再起動
・アプリケーションのバージョンアップ、または削除/再インストール
・地域判定オプションのチェックをすべて外す(変更する)
・バッファの設定時間の変更
・聴取場所やインターネット回線を変えて再接続
上記で解消しない場合は、「設定」→「アプリケーション(アプリ)」→「アプリケーション一覧」→「radiko.jpforAndroid」→「データを消去」をお試しください。

設定変更は設定画面にたどり着けないので無理ですがその他のは全部試しましたがやはりダメです.
こんな動き.

検索するとroot取得端末だとこういう動きになるようです.しかしこの端末はroot取得していません.
ふとアプリケーション一覧を眺めていると SuperSU が.このアプリケーションはroot取得後に利用するアクセス管理ツールなので関係ないだろうと思いながら削除してみるとradikoアプリが利用できるようになりました.
SuperSU – Google Play の Android アプリ

ということで,radikoアプリはroot取得端末じゃなくてもroot関連のアプリがあるとroot取得端末と判断して起動失敗することがあるようです.
恐らく録音などが出来ないようにroot環境で動かないようにしたいんでしょうけどはじめからroot取得済みで売られている端末などもあるし,少なくともPCでは録音は結構簡単に出来る(radigoとか)ので不便になるだけな感じも…….
ちなみにNHKラジオのらじる★らじるはSuperSUのある状態で動作しました.

バージョン情報

  • radikoアプリのバージョン 6.3.0

  • Android OSのバージョン 5.1.1(とてもとても古い……)