PhononのバックエンドをVLCに変える

ついにニコニコ動画のHTML5β版が降りてきて大喜びのPG_MANAですが、Firefox(in openSUSE)ではH264な動画が再生できない…前はできてた気がするんですが。
Gstreamerのプラグイン入れたり、再インストールしたり「gst-inspect」の結果を研究したり、色々しましたが無理でした。うーん難しい(gstreamerの仕組みをよく知ってない)。というか、「gstreamer-plugins-ffmpeg」のようなものがないんですよね。Pacmanにありそう。

つまり面倒くさいのもあって本気では取り組んでない。
まあ、Google-Chromeで…と言いたいですが、なんか最近KDE(Plasma 5.8.3になってから)が不調でGTK+なアプリを使うと突然Xサーバーがフリーズする。これ痛い。ログも有益な情報が残ってないし、ソースコードは(技術・時間的に)読めないし…(Xの設定いじったら直った)
とにかく強いLinuxユーザーになりたい。
さて探しているときにKDEが「Phonon」というフレームワークがあることを知りました。
これは度重なるGStreamerの仕様変更でうんざりしたKDE開発者たちが、間にワンクッション挟み、仕様変更でそのクッションだけ変更しようと考え開発されたそうです。
さてこれはバックエンドを選べるようになっており、デフォルトではGStreamerですが、これをVLCに変更できるようです。希望を抱いてYastで「phonon-backend-gstreamer」を削除し「phonon-backend-vlc」「phonon4qt5-backend-vlc」を追加し、再起動。
Qupzillaを起動しyoutube.com/html5へ飛んでいったもの変わらず…。ほぇ〜。
しかし「Dragon Player」がH264な動画を再生できるようになりました。一瞬何かの間違いだろうと思いましたが、バックエンドをGStreamerに戻すと再生できない。つまりKDE謹製のソフトでは効果があったようです。QtはPhononを採用したとあったきがするのですが。

さてこのPhononとやら、音楽再生がすごく便利みたいです。C++でもサラッとできる様。今度触ってみよう。

ということで何が書きたいかわからない文章が出来上がりましたが、「Phonon」の紹介でした。

証明書について

証明書というのはもちろんサーバーのことですが、これが最近問題なのです。
このサイトの認証局は”StartCom Certification Authority”(2016/12現在)なのですが、ご存知の通りいつの間にかWoSignに買収され、WoSignとともに数々の失態を犯してきたようです。SHA1の証明書を業界基準を超えて発行するために日付を偽装して発行したりサブドメイン所有者がRootドメインの証明書取れたり…ホェ~って感じですね(表現力不足)。
余談ですが、中国ではWinXP-SP2なPCが山ほどあるのでSHA1証明書使えなくなったらIEでサイト見れないからどうにかしてほしいといわれ日付偽装したらしいですが、中国も大変ですね…大量の最新PCを生産してるのに国民の大半はそれを使えないとはね…
さてMozillaはWoSign&StartComが新たに(2016-10-21以降かな?)発行する証明書を信頼しないようにする方針のようです。この変更はFirefox 51(おそらく正式版。というかDevはすでに51超えてるしカレンダーには2017-01-24とあるので来年かな。)に適用され、2017-03以降のいつかに
WoSign&StartComが信頼済み認証局から外されることになり、これは両社の新証明書への移行プランによっては調整するとあります。
https://blog.mozilla.org/security/2016/10/24/distrusting-new-wosign-and-startcom-certificates/から出典(訳が間違ってたら、教えてくださるとうれしいです。)

さてさて、Appleも何等かの対策を講じ、Googleも続くのではないかと思います。2社の大きな株主がQihoo 360でこれまた中国のセキュリティ会社です。無料のウイルス対策ソフト出してるところですね。ここがマイクロソフトと提携してるのでIE&Edgeがどう出るか知りませんが…まあこの二つのブラウザは使う気もなく自分のサイトが動作するかもわからないので(個人サイトだから言えること…)知ったこっちゃありません。さてこのサイトのは10月以前に発行されたので直ちに影響を受けるものではありませんが、いずれ影響を受けるでしょう。
今後永遠に使えなくなるわけではない様ですが、上に立ってるのが正直大丈夫なのか疑わしいレベルです。よってLet’s encryptにしてみるのというのも手ですが最近は格安で日本製のSSLが取れるようなのでこれを買うのもいいかもしれません。こんなサイトに不似合いですが。
ちなみにStartComのアカウントは消せません(7年間保存されるとどこかにあった気が)。これはセキュリティ対策だとか。まあ仕方ないですね。

KDE Connect

openSUSEのTumbleweedを使っていた時にKDE Connectという謎の機能が標準でついてきたので、気になっていたが使ってはいなかった。Leap 42.2になってKDEがアップデートされ、KDE Connectが出てきた。
さて…「なんや、これ」と調べてみると、スマホとPCをつなぐためのソフトでスマホには
Androidソフトを入れればよいらしい。
あとPC側はファイアウォールが有効になってるのであればYast=>セキュリティ=>Firewallで許可するソフトでKDE Connectを許可すればよさそう(…そういえばこれopenSUSEだけでしたね。ほかのではTCP/UDPの1714~1764ポートをあけておいてください。)
でもって、スマホをPCと同じネットワークにつなぎ(要はスマホをWifiにつなぐ)アプリを起動すると接続可能なPC一覧が出てきます。そこから選ぶとPC側で通知が出るので接続許可します。
これで準備完了です。
PCからスマホの中身のぞいたり、PCにファイル送ったり、PCのマウス・キーボードをスマホからいじれたり、スマホの通知をPCで受け取ったり(スマホの通知リスナーを有効にします)。許可するコマンドはスマホアプリの右上のボタンから設定できます。

…ただ現時点ではペア設定して通信しているとスマホのバッテリーの減りが…これはまあ仕方ない。
ただとても面白い機能なので使ってみてはいかがでしょう。

公式のWikiは
https://community.kde.org/KDEConnectです。

Pydio7

Pydio7が出てアップデートに手こずっていましたが…(一時このブログを間違って消してしまった…バックアップとっててよかった…)
アップデートしたあとにWebdavが使えないので困った。
解決には…
設定=>Application Core=>Pydio Main Options をだして
「WebDAV Server」の欄の
Enable for all usersを「Yes」(これがNoだとバグる…うちだけ?)
Shares URIを「/shares」とする(ここで重要なのが一番最初のスラッシュは必ず付け、最後にスラッシュは付けないこと。sharesは別に変えてもいい。)
またnginxの設定でrewriteをいろいろ書いていたと思うが…全部消して

...pydioの設定(location /pydio{...みたいに)...
if (!-e $request_filename){
rewrite ^(.*)$ /(pydioをインストールした場所)/index.php last;
}

を入れること。最大アップロードサイズやその他諸々は適宜設定。(要はrewriteが一個だけになった)
これで使えるようになった。大幅にソースを書き換えたらしいのでどうなったか楽しみですな。

熊本の状況

先週行ってきた熊本ですが、熊本城の崩壊状況はすごかったです…。
ここに数枚写真を置いておきます。
早く元の状態に復元されたらいいなと願っております。

HTTP Strict Transport Securityについて

SSL Server TestでA+を取るために必要なHTTP Strict Transport Securityヘッダ。
設定してみたがサブドメインまで飛ばされてちょいと不都合が起こったので外していた。
よく意味が分かってなかったんだがMDNの資料を見つけたのでこの際設定してみる。
HTTP Strict Transport Security -MDN
このヘッダの役割はブラウザからサイトにアクセスしようとした時にサーバーにアクセする前に強制的にHTTPSに飛ばすことで中間攻撃を防ごうと言うものです。
まあ単純に言えば
example.com/?id=1234 にアクセスするときに一回サーバーにHTTPでアクセスしてその後にHTTPSに飛ばされたとしましょう。
まあお分かりの通り一回HTTPでアクセスしてるので盗聴されていたらそこで終わりです。POSTでも同じです。
これを防ぐためにブラウザでhttpをhttpsに置き換えるように指示するのがこのヘッダです。
しかしこれはHTTPSで一回サーバーにアクセスしたあとに有効になります。
つまり初回HTTPでアクセスした時はたとえこのヘッダを挿入しても無視されます。証明書が有効であることが確認されてから有効になります。(ハッカーに書き換えられオレオレ証明書で通信させられる可能性があります?うーん、そこら辺はよくわからん…)
そのため別にhttpsリダイレクトは別に用意しないといけません。
さてStrict-Transport-Securityヘッダの設定ですが大まかに言うと…
Strict-Transport-Security: max-age=(有効期間[秒]) (; includeSubDomains )(; preload)
という感じです。
max-ageは有効期間です。これを過ぎるとブラウザでHTTPSにならなくなります。証明書の失効時の対策…と言いたいですが、これはアクセスするたびにカウンタがmax-ageにリセットされます。一ヶ月後に設定しても2週間後にまたアクセスするとそこから一ヶ月後になります。
HTTPアクセスを許可するにはmax-ageを0にします。
includeSubDomainsはサブドメインも適用するということです。自分はサブドメインでHTTPを使っているのでMNASの方は外しています。
preloadはHSTS Preload list というHTTPSでアクセスすべきサイトリストに登録するときに使います。HSTS Preloaded Listに説明がありますが、ここの手順に沿って設定すると初回アクセス時からHTTPS通信になるようです(という解釈で合ってるかな)。どうやらこれブラウザに組み込まれているようですね…。Chromeでは「chrome://net-internals/」のHSTSからいろいろできるので覗いてみてください。
というわけでnginxの設定に
add_header Strict-Transport-Security 'max-age=15552000';
を追加しました。
以上です。ありがとうございました。

openSUSE 42.1にVLC (mp4動画再生)

タイトル通りです。
今回行うのはVLCリポジトリ追加です。Pacmanと共存させてはいけません。
またvlc-codecsを入れるとFirefoxで H.264 mp4が再生できるようになりました。(いろいろしてるからvlcのせいではないかもしれないが…)
さらについでに言うとGoogle Chromeではこれがなくても H.264な動画が再生できます。内部に含まれてるんでしょうね。
H.264は特許が絡んでLinuxでは不利でしたけど…オープンソース化されなかったですっけ?
まあよくわからないし、x264も標準リポジトリから落ちてこないので、とりあえず追加します。
yastのオンラインリポジトリから追加を押して、URLを

http://download.videolan.org/pub/vlc/SuSE/[Ver]

とします。([Ver]はopenSUSEのバージョン)
42.1なら

http://download.videolan.org/pub/vlc/SuSE/Leap_42.1/

名前はわかりやすいもので

んで有効化して自動更新有効化して閉じて、ソフトウェアの管理から「vlc」と入れ検索し、「vlc」と「vlc-codecs」を入れます。
依存関係でなんかいろいろ入るけどOK。
入れたら閉じる。
あとはメニューにあるはず。
拡張子で関連付けるなどご自由に。
以上

Pydioについて

長文を書くと文法が崩壊するので短く…

クラウドストレージも様々なサービスが出てきましたが、今回紹介する「Pydio」はowncloudなどと同じ自分のサーバーの上に構築するストレージサービスです。

インストール方法はまあ探せば出てくるので詳しく書きませんが、公式からPHPファイルを持ってきて公開ディレクトリに解凍してアクセスして初期設定を済ませましょう。

ちなみに最初に作るアカウントは不具合が発生しやすいので「admin」とでもつけ作っておき、インストール後にアカウントを作り作ったアカウントの「Special Profile」を「Administrator」にして右上の保存を押し、最初に作ったアカウントを消しましょう。(消さなくてもいいけど)
ぼちぼち日本語化もされてるので不自由はないです。

設定

  • 壁紙変えたい

右上の「設定」 >Feature plugins > Graphical User Interface > Client Plugin より「Page Background Images」で変えられる。数個指定できて面白い。ちなみにでっかいファイルを置くときはMySQL(MariaDB)のmax_allowed_packetもいじらないとだめ。

  • アップロードサイズを変えたい

右上の「設定」 >Application Core > Uploader Optionsよりできる。サーバー(nginx と PHP-FPM)の設定も変えないとね。

  • WebDAVを使いたい

右上の「設定」 >Application Core > Pydio Main Options>WebDAV Serverで「Enable WebDAV」をYes 、「Shares URI」は「/(インストールしたパッチ)/shares」とでもしましょう。「/pydio/shares」みたいに。「Shares host」は空で。あとはお好みで。(保存ボタン押すのを忘れずに。)

次に右上の「My Account」より左の「WebDAV設定」より「WebDAV 共有を有効化」にチェック。これで示されたURIでアクセスできるはずです。遅いですが実用範囲内です。またWindowsでは再接続に難があります。WebDAV設定は 右上の「設定」 >Feature plugins>Workspaces Drivers>WebDAVでできます。

Linux用のWifi子機を買うとき

LinuxはノートPCにも入れることが多いけど、その時いつも問題となるのがWifiである。
USB-Wifiはドライバがないことが多く、買ってきたのに動かない…ということがある。
今までの経験から行くとバッファロー製のWifiは高確率で動くことが多い気がする。
あそこはLinuxをちょくちょくサポートしてるから、ドライバも公式サイトにあるときもあるし、たいてい自動認識する。
逆にエレコム製はWindowsでは良いが、Linuxでは動かないことが多い。(そういえば昔なんか捨て台詞を吐i(()
しかし、Arch Linuxでは一部のエレコム製のWifi子機を認識するみたい。

(参考程度として、WLI-UC-GNM2はLinuxで動く。)

以上…寝言でした…(今、23:00)

==追記(2016/10/21)==
ELECOMのWDC-150SU2MはLinuxカーネルが4以上なら使える模様。
WLI-UC-GNM2は熱暴走で時々おかしくなるようだ…
LinuxでWifiを使うならば新発売製品より一時たった製品を買うほうが無難かもしれない。
また買う前にスマホなどで調べたほうがいいと思う。

Bash on windowsをスタートメニューから起動したら文字化けする。

スタートメニューかタスクバーのBash(Ubuntuのロゴかな?)のアイコンを右クリックして、その他=>ファイルの場所を開く
表示されたリンクを右クリック、プロパティ。
リンク先を

C:\Windows\System32\cmd.exe /k "C:\Windows\System32\bash.exe ~&&exit"

とでもしたら直った。
cmd通さないといけないのかな…