GNU/Linux向けのFlash Playerは、従来のNPAPI版のプラグインの提供がバージョン11.2(2012年3月下旬に公開)で最後となり、セキュリティ修正のみがその5年後の2017年3月まで提供されることになっているが、バージョン11.3以上は新しいPPAPI版のプラグインがGoogle Chromeに同梱される形で同ブラウザとともに公開されているのみで、他のブラウザで使える形式での配布も単体での配布もされていない。
(2017/3/29)その後NPAPI版の開発は再開され、更に “すべてのバージョン” の配布ページからダウンロードすることでPPAPI版も単独で入手可能となっている。Firefoxでは多数のNPAPIプラグインがサポート終了されて使用できなくなったが、Flashプラグインは引き続き使用できる。
本記事ではGNU/Linux上でGoogle Chrome以外のWebブラウザからPPAPI版のFlash Playerを用いるための方法についてを扱う。
Chromiumブラウザからの使用
自由なソフトウェアのChromiumブラウザは内部的にはGoogle Chromeに非常に近く[1]、PPAPI版の最新のFlash Playerを動かすことができる作りになっている。そのため、Google Chromeの配布ファイルからプラグイン[2]を取り出して動かすことができる。
Debian/Ubuntuでは “pepperflashplugin-nonfree” パッケージをインストールすることで自動的にGoogle Chromeがダウンロードされてプラグインのみが/usr/lib/pepperflashplugin-nonfree/
以下に配置される。プラグインの後にChromiumのパッケージをインストールした場合は “sudo
update-pepperflashplugin-nonfree
--install
” を実行すると動作するようになる。
Mozilla Firefoxなどのブラウザからの使用
FirefoxなどのWebブラウザはPPAPIに対応していない。
Firefoxを同APIに対応させるという案自体はこれまでに出ているが、色々な理由で対応予定はない。[3]
Firefoxなどでは2017年3月まではNPAPI版のFlash Player 11.2を安全に使うことができるが、その後はそのままではFlash Playerが安全には使えなくなる。
以下、GNU/Linux上のFirefoxなどのブラウザで最新のFlash Playerを用いるための2つの方法についてを扱う。
freshplayerplugin (プラグインアダプタ/ラッパー)
freshplayerpluginの概要
freshplayerpluginはGoogle Chrome付属のFlashプラグインを従来のNPAPI対応Webブラウザでから利用するためのラッパー。基本的にMITライセンス(外部プロジェクト由来のコードは除く)。
FirefoxにおけるPPAPI対応の実装を行うのは同アプリケーションの内部についての理解が必須な上、もしうまく動作するものができたとしてもコードの取り込みに向けた活動も行う必要があるが、一方で、既存のNPAPIプラグインという形で動作する “PPAPIプラグインを用いるラッパー” という形の実装を作る場合はこの中身の部分のみに注力していればよいため、この “freshplayerplugin” はこのラッパー形式のプラグインとして開発されている。
Flashプラグインの配置
前提として、Google Chromeがインストールされているか、同ブラウザに含まれるFlashプラグインのファイル群がディストリのパッケージ用のディレクトリなどに配置されている必要がある。
(2017/3/29)単独でPPAPI版がダウンロードできるようになっているため、Google Chromeはなくてもよい。また、同ブラウザのPPAPI版プラグインについては直接付属せずに一般ユーザのディレクトリに自動的に最新バージョンがダウンロードされる形になっている。
バージョン0.3.1時点での標準の探索ディレクトリは下のダブルクォート内の項目のいずれかとなる。
const char *pepperflash_path_list[] = {
"/opt/google/chrome/PepperFlash", // Chrome
"/opt/google/chrome-beta/PepperFlash", // Chrome beta
"/opt/google/chrome-unstable/PepperFlash", // Chrome unstable
"/usr/lib/pepperflashplugin-nonfree", // pepperflashplugin-nonfree (Debian)
"/usr/lib/PepperFlash", // chromium-pepperflash-plugin (Slackware)
"/usr/lib64/PepperFlash", // chromium-pepperflash-plugin (Slackware)
"/usr/lib/chromium-browser/PepperFlash", // chrome-binary-plugins (Gentoo/Sabayon)
"/usr/lib64/chromium-browser/PepperFlash", // chrome-binary-plugins (Gentoo/Sabayon)
"/usr/lib/adobe-flashplugin", // adobe-flashplugin (Ubuntu)
"/usr/lib/chromium/PepperFlash", // chromium-pepper-flash (Old Build) (CentOS/Read Hat/Fedora)
"/usr/lib64/chromium/PepperFlash", // chromium-pepper-flash (Old Build) (CentOS/Read Hat/Fedora)
"/opt/chromium/PepperFlash", // chromium-pepper-flash (New Build) (CentOS/Read Hat/Fedora)
"/usr/lib/pepflashplugin-installer", // pepflashplugin-installer (Ubuntu)
NULL,
};
これら以外の場所に配置したプラグインを参照したい場合は
- 環境変数XDG_CONFIG_HOMEが定義済みの場合:
${XDG_CONFIG_HOME}/freshwrapper.conf
- 同環境変数が未定義の場合:
[ホームディレクトリ]/.config/freshwrapper.conf
へ
freshwrapper.conf
pepperflash_path = "/path/to/libpepflashplayer.so"
のような設定を記述する(右辺は実際の場所に置き換える)。
freshplayerpluginのインストール
UbuntuではPPAリポジトリ “ppa:nilarimogard/webupd8” で “freshplayerplugin” という名前でパッケージが提供されている。
ソースからプラグインをビルドする場合はリリース版のダウンロードページからソースをダウンロードしてビルドする。
ビルドに必要なパッケージはプロジェクトページの “Install” に書かれており、Debian/Ubuntuでのパッケージ名も羅列されている。
[freshplayerplugin-x.y.z]$ mkdir build && cd build [freshplayerplugin-x.y.z]$ cmake .. [freshplayerplugin-x.y.z]$ make (オプション...)
ビルドが正常に完了するとlibfreshwrapper-flashplayer.so
が作られる。
他のNPAPIプラグインと同様、一般ユーザの場合はこのファイルを[ホームディレクトリ]/.mozilla/plugins/
以下に、全てのユーザに対して有効にするには管理者権限で/usr/lib/mozilla/plugins/
以下に配置すればよい。
(2015/10/4)プラグインのファイル名はバージョン0.3.3からlibfreshwrapper-flashplayer.so
に変更された。
freshplayerpluginの動作状況・問題点
バージョン0.3.1時点では動作はかなり良好で、niconicoで日本語のコメントを入力して送信することもできる(uimで確認)。同サイトで動画内コメントの文字列の右端が欠ける現象があるものの、他のサイトを含めて全体的には安定してあまり問題もなく動作している印象がある。
niconicoについては当面Google Chrome系Webブラウザで閲覧することを推奨する。
Pipelight
Pipelightの概要
Pipelightは改変版のWine[4]を用いてWindows用プラグインをGNU/Linux版のNPAPI対応Webブラウザ[5]から用いるためのツール。
Microsoft SilverlightがDRM含めて使える他、Flash Playerにも対応しており、プラグインのインストール自体も簡単に行える。
Pipelightのインストール
公式サイトの “Installation” にディストリごとの導入についてが書かれている。
UbuntuではPPAリポジトリ “ppa:pipelight/stable” で “pipelight-multi” という名前でパッケージが提供されている。
Flashプラグインを有効にする
下はプラグインを有効にするまでの作業例。
(パッケージ情報の取得・インストール操作の前に必ず実行) $ sudo pipelight-plugin --update (Flashプラグインを有効にする) $ pipelight-plugin --enable flash The following modules require a license confirmation before they can be enabled: [*] Adobe Flash Player By continuing the installation you agree that you've read and accepted the ADOBE Personal Computer Software License Agreement: http:// ... /Flash%20Player_11.0.pdf To find out more click here: http://get.adobe.com/flashplayer Do you accept the 1 license(s) above? [Y/N] y Plugin flash is now enabled (一般ユーザ権限で有効なプラグインを一覧) $ pipelight-plugin --list-enabled flash
プラグインを無効化するには “pipelight-plugin
--disable flash
” を実行する。
Pipelightの動作状況・問題点
基本的には動作自体はするものの、一部日本語が文字化けしたりプラグインがうまく有効にならなかったりすることがあり、Flash目的でこのソフトウェアを使用するのは個人的にはあまりおすすめできない。
- Chromium 43.0.2357.130
- Mozilla Firefox 39.0.3
- freshplayerplugin 0.3.1
- Pipelight 0.2.8.1
- Wine Staging 1.7.48
- pepperflashplugin-nonfree 1.7ubuntu1