気の向くままに辿るIT/ICT/IoT
システム開発

DebianにLAN内ファイル転送・共有アプリWarpinatorをインストール

ホーム前へ次へ
*BSD/PC-UNIX/Linuxって?

DebianにLAN内ファイル転送・共有アプリWarpinatorをインストール

DebianにLAN内ファイル転送・共有アプリWarpinatorをインストール

2022/02/05

 AndroidスマホのF-Droid版を見つけたことに端を発し、メインノートPCであるDebianにLinux Mintプロジェクト開発のLAN内ファイル転送・共有アプリWarpinatorをインストールしてみた話。

 Warpinatorは、2009年リリースLinux Mint 6のGiver再実装とのこと。

 Linux版は公式、Android、Windows版は非公式っぽい。

 WarpinatorをインストールしたOSは、Debian GNU/Linux 11.0 bullseye amd64(64bit)。

経緯

 Androidスマホでは、当初、Google Play版のAirDroidの方が使い勝手は良かったものの、F-Droid版であることを優先し、Sharikを使っていました。

 そんな中、何か新しいアプリないかなーと、ふと探してみるとF-Droidの不具合を再確認・再インストールしつつ、デスクトップ環境MATEやCinnamonを開発したLinux MintプロジェクトのWarpinatorの非公式なAndroid版Warpinatorというアプリを発見。

 このAndroidアプリ版Warpinatorは、非公式らしいものの、githubのLinux版でもWindows版と並んで紹介されているので、もはや公式では?とも思いますが、ってよく見るとWindows版も非公式なのか...。

 NetBSDやFedora、Debianでも入れていた|いるMATE、Cinammonファンでスペック問題とか特別何かない限り、必ずと言って良いほど何れかを使う自身は、迷わずインストール。

 当然、動作確認には他の端末も必要になるので、もう8年ほど仮想マシン以外にWindowsという選択肢は(必要)ない自身としては、現在使用のメインOSであるDebianパソコンにもインストールすることにした次第(こっちのWarpinatorは公式)。

Debian bullseyeにWarpinatorをインストール

debian:~$ git clone https://github.com/linuxmint/warpinator.git
debian:~$ cd warpinator/
debian/warpinator:~$ sudo apt install meson policykit-1 python3-grpc-tools python3-protobuf gobject-introspection

 Warpinatorのインストールについては、第667回 Warpinatorでお手軽LAN内ファイル転送を参考にさせていただきました。

debian/warpinator:~$ sudo apt install -y gnome-pkg-tools dh-python debhelper
ミラーサイト指定

 リンク先にもあるように足りないパッケージは追加などが必要で自身の場合、あと3つ追加でインストールすることになりました。

 また、後述のdpkg-buildpackageではなく、debhelperなどのインストール中だったかと思いますが、途中、ミラーを指定しないと先に進めない状態になり、例を見る限り、それでよいのかな?ということで自身が使っているDebianのリポジトリを設定しましたが、これが何に使われるのかについては、不明...。

debian/warpinator:~$ dpkg-buildpackage -r -uc -b
debian/warpinator:~$ ls ..
... warpinator_1.2.9_all.deb warpinator_1.2.9_amd64.buildinfo warpinator_1.2.9_amd64.changes ...
debian/warpinator:~$ sudo apt install ../warpinator_1.2.9_all.deb python3-zeroconf
debian/warpinator:~$

 dpkg-buildpackageすると1つ上の階層にwarpinator_x.x.x_all.debがビルドされました。

 で、それを踏まえてaptでインストール。

debian/warpinator:~$ which -a warpinator
/usr/bin/warpinator
/bin/warpinator
debian/warpinator:~$ sudo find / -name warpinator
/usr/bin/warpinator
/usr/libexec/warpinator
/usr/share/doc/warpinator
/usr/share/warpinator
/home/x/warpinator
/home/x/warpinator/debian/.debhelper/generated/warpinator
/home/x/warpinator/debian/warpinator
/home/x/warpinator/debian/warpinator/usr/bin/warpinator
/home/x/warpinator/debian/warpinator/usr/libexec/warpinator
/home/x/warpinator/debian/warpinator/usr/share/doc/warpinator
/home/x/warpinator/debian/warpinator/usr/share/warpinator
/home/x/warpinator/obj-x86_64-linux-gnu/bin/warpinator
/home/x/.config/warpinator
debian/warpinator:~$ cd
debian:~$

 インストール状態を確認するとこんな感じでした。

動作確認

 AndroidスマホにF-Droid版Warpinatorをインストールし、Debian GNU/Linuxパソコンとの間で動作確認を行いました。

Debian bullseye上のWarpinator

 Debian bullseye 11上で実行、見つかった目的の端末をタップした後のWarpinatorはこんな感じ。

 お互いにWarpinatorを起動しておき、LAN内にこれを起動している端末を見つけると表示され、右上の[ファイル送信]をクリックで[最近使ったファイル]か[参照]からディレクトリや各種ファイルなど任意のファイルを選択すると送信されます。

 前者では、選択できるのは1つだけですが、後者では、CtrlキーやShiftキーを押しながら複数のディレクトリ含む各種ファイルを選択・送信できます。

 また、PCならでは、かつ、Windowsっぽく、ファイルの種類や単一か複数かに関わらず、ファイラーから直接マウスでドラッグ&ドロップもでき、ドロップした瞬間に転送されます。

 送信した履歴が一覧表示され、不要ならマイナスボタンをクリックすると削除することもできます。

 ちなみに相手を見つけて表示されている間は、少なくとも電源は入っている必要はありますが、相手側のWarpinatorが終了後も送信することができました。

 尚、バックグラウンド起動するようでアプリを閉じただけでは、終了せず、[設定]でOFFにしない限り、システムトレイの通知領域に表示され、他方、アプリのハンバーガー(横3本線)メニューから[終了]を選ぶと[シャットダウンしています...]、改めて起動すると[初期化しています....]、[検索しています...]などと表示されます。

LAN内にWarpinatorを発見したAndroid 10上のWarpinator

 Android 10上で実行後のWarpinatorはこんな感じ。

 LAN内でWarpinatorを起動している端末を見つけると、こんな風に表示されます。

Android 10上のWarpinatorで目的の端末をタップ・遷移した画面

 前掲の画面で目的の端末をタップするとこんな感じの画面に遷移します。

 ここで右下のアイコンをタップすると自動認識された?ファイラーが開き、各種ファイルなど任意のファイルを、複数ある場合は、任意の位置ならCtrlや、連続して並ぶファイルならShiftキーと併用、選択すると送信されます。

 前掲の画面もそうですが、二本の矢印は、双方ともに起動中に表示されるようで、そうでない場合は、点線だったかが表示されます(が前述の通り、送信はできます)。

 スマホ用、パソコン用共にハンバーガーメニューなどの[設定]から[一般]と[接続]を選択できます。

 ファイアーウォールを設定している場合は、[接続]タブにおいてデフォルトの、または、任意に設定したポートを開放します。

 [一般]設定の内、[開始時にメインウィンドウを開く]と(デバイス起動時に)[自動的に開始]を共にOFFにしているとメニューから選択・起動しても通知領域上にアイコンが表示されるだけで、メインウィンドウを開くには、通知領域上のアイコンをクリックするということになるので、前者がOFFの場合、後者をONにしておけば、自然な挙動と言えそうですね。

 一方、スマホでは、どのタイミングでも、リアルタイムで即、LAN内の相手を見つけることができるのですが、Linuxパソコン側では、今のところ、スマホ・PC両方ともWarpinatorをシャットダウンした状態から、もしくは、スマホのWarpinatorのみシャットダウンした状態から、パソコン側を先に起動、その後、スマホ側を起動した場合のみリアルタイムに表示されます。

 そうでない場合、Linuxパソコン側では、なかなか相手を見つけることができず、「他のコンピューターが見つかりません...」となってしまい、そのまま、時に、なにかの拍子にいつの間にか見つけて表示されるケースもあれば、いつまで経っても表示されないケースもあり、圧倒的に後者が多くなります。

 そのように運用すれば良いので回避はできますが、この点は、唯一、改善を期待したいところですかね。

 また、実害はありませんが、[設定]で[ファイルが上書きされる時に承認を要求]をONにしても通常コピーペーストするときのように末尾に(1)などが付いてコピーされるのみでした。

感想

 一部改善を期待したい部分はあったものの、実際使ってみたら、ちょっと画面が特殊なAirDroid以上に使いやすく、違和感なく、馴染んでいて、もう、素晴らしいの一言、こういう使い勝手を求めてたんだよねって感じ。

 Linux Mintの成果物であるデスクトップ環境MATEやCinnamon、Androidを使いつつもGAFAMを避けてGoogle Play以外の選択肢の中でもF-Droid推しな自身は、なおさら、迷いなど微塵もなく、これ一択。

 じゃぁ、なんでLinux Mint使わないんだって話は、自分でもよくわからないので、さておくとしましょう。

 ちなみにgithubを見てもF-Droid/G-Droidを見ても、かろうじてファイル転送できそうなのはわかるも、どんな特徴があってどんな風に使えるのかよくわからないというWarpinatorは、謙虚なのか?アピールが苦手なのか?使って知れ!的な無骨な感じなのか?なんとも不思議ちゃん。

LINK

ホーム前へ次へ