このところ、すっかり、dynabook(Intel Celeron デュアルコアCPU/RAM:4GB)よりもRaspberry Pi 400パソコン(ARM cortex-A72 クアッドコアCPU/RAM:4GB)がメインになっています。
今日は、Flatpakデビューとして7Zipと同等以上と言っても良さげなアーカイバPeaZipをインストールしてみました。
先日、dynabookのDebian amd64でSnappy(snap/snapd)デビューし、アプリを入れてみたのですが、Flatpakも同じジャンルのようでホストOSのリポジトリとは分けてアプリ環境をまるごと別環境としてインストールしてくれるようです。
Wikipediaによれば、Flatpackは、Linuxデスクトップ向けのソフトウェアデプロイメント(展開)、パッケージ管理、アプリケーション仮想化を行うユーティリティソフトウェアとのこと。
マシンの再起動が必要と知らずにPi-Appsで入れたPeaZipがどこにあるんだ状態になったのが発端です。
そう言えば、いつだったか、以前、PeaZipを見かけたことはあったのですが、お気に入りのEngrampaで事足りていることもあり、その時は、インストールするまでには至らず、その存在もすっかり忘れていました。
そんな折、改めてPeaZipに目が行ったのは、Raspberry Pi 400/WineでWindowsアプリ7Zipもインストールしたことでしょうか。
その7ZipもDebianリポジトリから7zip入れたらCLIのみでデスクトップ版をとSnappyを使ったっていう経緯がありました。
wineでインストールしたWindowsアプリも手軽にデスクトップアイコンからでも若干タイムラグはありつつも起動でき、起動後はサクサクなのですが、7Zipの代替ともなり、arm64/aarch64対応パッケージがあるなら、PeaZipの方がより良いかなと。
尤もEngrampaで手に負えないことがあったらの話ですが。
Flatpackは様々なLinuxディストロに対応済みでアイコンを選択すると各ディストリビューションにおけるFlatpakのインストール・設定・アプリのインストール方法のページに遷移します。
今回は、Rapsberry Pi OSなのでラズパイのアイコンをクリックします。
やることは、遷移したページにある通りです。
Rapsberry Pi OSにおいては、リポジトリからapt installでflatpakをインストールできます。
flatpakをインストールしたら、Flatpakリポジトリを登録し、マシンを再起動します。
PeaZipは、WindowsやmacOSの他、Linuxにおいてもx86_64/x86/ARMに対応しています。
今回インストールするRapsberry PiのCPUアーキテクチャーはARMなので[Linux x86_64]や[Linux x86]のページを開いた場合は、ページ上段青い背景の下部にあるリンクから[Linux ARM]をクリックしてPeaZip for ARMページを開きます。
現時点では、openSUSE RPMか、Flatpak何れかを選択できました(前者を選ぶとダウンロード)。
後者のFlatpakを選択するとPeaZipアプリ詳細画面が表示されます。
当該ページのInstallアイコンもクリックでき、Flatpakは、[ソフトウェア]と連携できるらしく、クリックすると[ソフトウェアでInstall]がデフォルトとなっており、GUI操作できるようです。
他方、当該ページの後段にFlatpakによるPeaZipのインストールと起動方法がこんな風に記載されています。
もちろん、起動については、デスクトップメニューにも登録されているのでメニューアイコンのクリックでもOKです。
デスクトップメニューからPeaZipを起動してみるとデフォルトの英語表記になっています。
これを日本語にしたい場合は、[Options] => [Localization]を選択して表示されるパネルの[General]タブの[Localization]のdefault.txtとあるリストからja.txtを選択します。
すると[OK]ボタンをクリックするまでもなく、PeaZipが再起動し、日本語表示になりました。
なんかクリーム色の背景のポップアップが、なかなか消えないこともありますが、気にしない。
Windowsで人気のベンチマークソフトのLinux版KDiskMarkがあったのでこれも入れてみました。
ちょっと慣れてきたので?端末からflatpak search kdiskmarkして、表示されたApplication IDを指定してsudoも付けずにflatpak install flathub io.github.jonmangon.kdiskmarkでいけました。
ノートPC/Debian bullseyeでは、gitから持ってきて入れましたが、こちらはFlatpakで。
と言ってもベンチマーク取る習慣はないのですが。
KDiskMarkも多言語対応しており、[Help] => [Language]で言語選択はできますが、残念ながら現時点で日本語はありません。
最近、すっかり、メインコンピュータとなっているラズパイ400、他のPCやラズパイとはscpで充分も、Androidスマホとも連携が必要、まして後付けの無線充電規格Qi対応レシーバを常時USBポートに接続しているので当然、無線通信でしょということでWarpinatorもインストールしてみました。
WarpinatorはLinux Mintプロジェクト製でWi−Fi経由でファイル送受信・共有できるアプリ。
リポジトリも1個なら?指定しなくても良いようなので今回は、flatpak search warpinatorして、表示されたApplication IDを指定し、sudoなしでflatpak install org.x.Warpinatorとしてインストールしました。
ちなみにアプリによっては、端末サイズを拡大しないとflatpak searchした際、肝心なApplication IDの全容が見えないこともあるので注意。
DebianではgithubからインストールしたWarpinatorですが、やはり、全てサンドボックス化してくれるFlatpakだと依存関係も気にする必要がなく簡単。
これでRaspberry Pi 400からAndroid/F-Droid版Warpinatorとも無線越しに容易にファイル転送できます。
今日、ラズパイ400からAndroidスマホにWarpinatorで転送しようと思ったら、Warpinatorが起動しなかったり、保存フォルダがセキュアじゃないよとか、セキュアモードが無効だよと言われたり、文字化けが起きたりしたのでセキュアじゃない件はさておき、一応対処、文字化け解消とファイル転送ができるところまではいった話。
まず、Warpinatorが起動しない件は、flatpak uninstall、flatpak installで再インストールして解決。
続いてアンインストール前も再インストール後も発生した文字化けの解消方法と解消されるまでの謎な挙動について。
文字化け解消方法は、Linuxあるあるな[fc-cache APP_NAME -f -v]ながらFlatpakバージョンということで[flatpak run --command=fc-cache org.x.Warpinator -f -v]。
ただ、実行後、最後の最後で[fc-cache: ../../src/fccache.c:808: FcCacheFini: アサーション `fcCacheChains[i] == NULL' に失敗しました。]、何度やっても同じ。
flatpak run --command=fc-match org.x.Warpinatorしてみても[ipag.ttf: "IPAゴシック" "Regular"]、[fc-match: ../../src/fccache.c:808: FcCacheFini: アサーション `fcCacheChains[i] == NULL' に失敗しました。]。
だからでしょうが、その後も変化なし、ならばとログアウト/ログインしても、再起動しても変化なしで、再度fc-cacheするなどしていたら、何をしたわけでもないものの、何が功を奏したのか、ようやく文字化けが解消し、最善策がわからないまま解決。
続いて着信転送(転送されたファイルの保存場所としての(ホーム))フォルダがセキュアじゃない件。
Warpinator起動時に表示される、セキュアじゃない旨の詳細を見るべく、リンクやボタンを押してみるとgithubに飛び、「フォルダの隔離(Folder Isolation)」が必要な模様?でLandlockか、Bubblewrap(bwrap)を有効にすべきで前者が有効なら自動で認識するとあるもapt-cache searchしても後者(bubblewrap)はあるも前者はなく有効になっているはずもなく。
Flatpakで既に機能しているbubblewrapのようにFlatpak版Warpinatorを使っている場合は、landlockか、もしくは、オススメされない消極的な方法としてフォルダを隔離しないレガシー(≒過去の遺物)な方法だけが利用できるとのこと。
ここでFlatpak版を使っているARM64なラズパイ400では、bubblewrapという選択肢は存在しないようです。
よって存在するならlandlockを拾ってくるか、レガシーか。
githubの説明によれば、landlockが利用できない場合は、コマンドラインか恒久的な策として(ってレガシーなのに?)Flatsealアプリを使ってフォルダをロックする方法があるとのこと。
コマンドラインの場合は、以下。
flatpak run --filesystem=home:ro --filesystem=<path-to-your-save-folder> org.x.Warpinator --mode=legacy
自身は、flatpak searchした結果あったFlatsealアプリをflatpak install Flatsealしてインストール。
説明に沿ってFlatsealを起動、[Warpinator]タブに移動、[Filesystem]セクションの[All user files]をOFF、[Other files]でホームフォルダと転送されたファイルの保存場所となるフォルダを追加。
結果、セキュア面がねーと表示はされるものの、ファイル転送自体はできるようになり、使用できるという意味では、一応解決。
重要な点として追記があり、Linuxカーネル5.13含む移行は、landlockが利用可能で[sys/kernel/security/lsm | grep landlock]で利用可能かチェック可能、5.15ながらARM64版は利用できないようで結果出力なし。
それでもbubblewrapはたいていのディストロで使えるはずとあるも先の通り、Flatpak版では、この選択肢はなさ気、ARM64にWarpinatorを直でインストールできるのか否かは未確認。
もう1つ「セキュアモード」というのがあり、送受信側双方で一意な共有鍵となるグループコードを設定すれば利用できるとのこと。
ただし、これを適用するには、制限があり、「自動ログインの無効化」、「着信転送はユーザーの承認必須」、「Warpinatorの連続使用は起動後60分(50分?)まで」という制限があるとのこと。
尚、共有鍵は一般的な英数字のみ推奨で8文字から32文字まで、他の文字を使う場合は、もっと短くなる場合もある旨、説明があります。
というわけで現在、レガシーな状態で使用継続中。
色帯4〜6のカラーコードから何Ωの抵抗かがわかるアプリ。
リポジトリを指定することなく、flatpak searchしてIDを調べるまでもなく、flatpak install gresistorでインストールできました。
最近、すっかり遠ざかってますが、いつもネットで調べてたので。
テスターLCR-T4-Hで調べても良いのですが、もう1つの選択肢として。
ONVIFプロトコルを使ったネットワークカメラの閲覧・制御アプリONVIFViewerもインストールしてみました。
リポジトリを指定することなく、flatpak searchしてIDを調べるまでもなく、flatpak install onvifviewerでインストールできました。
ネットワークカメラとして買ったものは持ってないのですが、ESP32-WROVER-DEVで使えるかも?と。
あ、使えなかった...のでflatpak uninstall onvifviewer。
おしまい。