lisz-works

プログラミングと興味を貴方に

TermuxをF-Droid経由に移行しよう!

【スポンサーリンク】

Termux

こんにちは、lisです!

Termux入れて遊んでいたら「F-Droid使ってインストールしなおせや」と警告が出ました。

ということでバックアップと再インストールについてです。

Termux起動時に赤文字の警告が出た

Termuxの設定したなーと思って、再度立ち上げたらいつもの起動時メッセージの下に赤文字でこのような文章が出力されました。

You are likely using a very old version of Termux,
probably installed from the Google Play Store.
There are plans in the near future to remove the
Termux apps from the Play Store so that new users
cannot install them and to **disable** them for
existing users with app updates to prevent the use
of outdated app versions. Instead, you are
encouraged to move to F-Droid or Github sources
(see [1]). You can backup all your current Termux
data before uninstallation and then restore it later
by following instructions in the wiki [2]. Check
the changelog [3] for all the new features and fixes
that you are currently missing. Check [4] for why
this is being done.

[1] https://github.com/termux/termux-app#installation
[2] https://wiki.termux.com/wiki/Backing_up_Termux
[3] https://github.com/termux/termux-app/releases
[4] https://github.com/termux/termux-app#google-play-store-deprecated

-- 翻訳 --
おそらくGooglePlayストアからインストールされた非常に古いバージョンのTermuxを使用している可能性があります。
近い将来、新しいユーザーがそれらをインストールできないようにPlayストアからTermuxアプリを削除し、古いアプリバージョンの使用を防ぐためにアプリの更新がある既存のユーザーに対してそれらを**無効化**する計画があります。 代わりに、F-DroidまたはGithubソースに移動することをお勧めします([1]を参照)。
アンインストールする前に現在のすべてのTermuxデータをバックアップし、wiki [2]の指示に従って後で復元することができます。
現在欠落しているすべての新機能と修正については、変更ログ[3]を確認してください。
これが行われている理由については、[4]を確認してください。

[1] https://github.com/termux/termux-app#installation
[2] https://wiki.termux.com/wiki/Backing_up_Termux
[3] https://github.com/termux/termux-app/releases
[4] https://github.com/termux/termux-app#google-play-store-deprecated

Androidバージョンが古いせいでTermux自体も古かったのかな?

と思ったら[4]を読んだら、そもそも

SDKの動作の変更と新しいGooglePlayポリシーにより、TermuxはPlayストアでアップデートを受信しなくなりました。代わりに、F-Droidからアプリケーションとアドオンをインストールしてください。

とありました。

F-Droidはオープンソースのストア(Google Playみたいな)らしいです。

調べた限り怪しいものではないようなので使っていきます。

立ち位置的には「脱GooglePlay」的なものと感じました。

実施手順

ということでやっていきます。今回実施する手順はこちら。

  1. アンインストール前にTermuxのデータバックアップを行う
  2. F-DroidからTermuxをインストール
  3. バックアップデータをリストア

アンインストール前にTermuxのデータバックアップを行う

termux-setup-storageしてない場合(~/storage/*が作られていない場合)まず実行する。

~ $ termux-setup-storage
~ $ ls
storage  ubuntu-in-termux
~ $ ls storage
dcim  downloads  external-1  movies  music  pictures  shared
~ $ ls -l storage
total 0
lrwxrwxrwx 1 u0_a294 u0_a294 24 Sep 16 12:09 dcim -> /storage/emulated/0/DCIM
lrwxrwxrwx 1 u0_a294 u0_a294 28 Sep 16 12:09 downloads -> /storage/emulated/0/Download
lrwxrwxrwx 1 u0_a294 u0_a294 48 Sep 16 12:09 external-1 -> /storage/6339-3933/Android/data/com.termux/files
lrwxrwxrwx 1 u0_a294 u0_a294 26 Sep 16 12:09 movies -> /storage/emulated/0/Movies
lrwxrwxrwx 1 u0_a294 u0_a294 25 Sep 16 12:09 music -> /storage/emulated/0/Music
lrwxrwxrwx 1 u0_a294 u0_a294 28 Sep 16 12:09 pictures -> /storage/emulated/0/Pictures
lrwxrwxrwx 1 u0_a294 u0_a294 19 Sep 16 12:09 shared -> /storage/emulated/0

こんな感じでバックアップを作成。

$ tar -zcvf /sdcard/termux-backup.tar.gz -C /data/data/com.termux/files ./home ./usr

tar: Exiting with failure status due to previous errorsというエラーで終わっていますが、恐らく

tar: ./usr/tmp/ssh-YGf0kd7NHv/agent.23411: socket ignored

が原因でバックアップ手順的にも「ソケットファイルに関する警告が表示された場合は無視して」と書かれているのでスルーします。

/sdcard/termux-backup.tar.gzはTermuxをアンインストールしても残る。

TermuxをF-Droidから入れ直す

Termuxをアンインストールする。

F-Droidアプリをインストールするために、下記手順で不明なアプリをインストールできるようにする。

  1. 設定画面
  2. アプリと通知
  3. 詳細設定 → 特別なアプリアクセス
  4. 不明なアプリのインストール
  5. 使っているブラウザ(Chrome等)を選択
  6. 「この提供元を許可する」をON

F-Droid」にアクセスして、「F-DROIDをダウンロード」からダウンロードして開いてインストールする。

同じ手順でF-Droidから不明なアプリをインストールできるように設定する。

  1. 設定画面
  2. アプリと通知
  3. 詳細設定 → 特別なアプリアクセス
  4. 不明なアプリのインストール
  5. 「F-Droid」を選択
  6. 「この提供元を許可する」をON

F-Droidを開いて、Termuxを検索してインストール。

バックアップTermuxデータを復元する

Termuxを開いて下記コマンドでデータを復元します。

$ termux-setup-storage
$ tar -zxf /sdcard/termux-backup.tar.gz -C /data/data/com.termux/files --recursive-unlink --preserve-permissions

完了したら通知バーからTermuxを一旦閉じて、開き直す。

あとがき

TermuxをF-Droid経由に移行しようでした!

関連アプリもF-Droidにあるし、なんならGooglePlayで有料だったものが無料でインストールできます。

www.lisz-works.com

www.lisz-works.com

www.lisz-works.com