xbar uninstallの手順|残るファイルと、消してよいものの見分け方

好きなスクリプトの出力をメニューバーに出せる、という理由で入れたアプリを、そろそろ消したいと考えている。動かなくなったのかもしれないし、置いたプラグインの数だけメニューバーの項目が増えて、目的のアイコンが探しづらくなったのかもしれない。このアプリの削除がややこしいのは、本体をゴミ箱に入れても、自分で置いたスクリプトと設定が別の場所に残るからである。この記事では、公開されている資料をもとに、消す手順と、残るものの中身の見分け方を整理する。

消す作業が3つに分かれる理由

このアプリは、本体、プラグイン、設定の3つが別々の場所に置かれる作りになっている。本体はアプリケーションフォルダ、プラグインは利用者のライブラリフォルダの中、設定とキャッシュはさらに別の場所という並びである。開発元の資料には、プラグインの置き場所が明記されている。

The plugin directory is folder on your Mac where the plugins live, located at ~/Library/Application Support/xbar/plugins. 出典: github.com

つまり、アプリケーションフォルダから本体を捨てただけでは、プラグインのスクリプトはそのまま手元に残る。残ったスクリプトが勝手に動くことはないが、問題は中身のほうにある。プラグインは自分のMacで動く実行ファイルなので、外部サービスの認証キーやアクセストークンが本文に直接書かれている例が珍しくない。削除の順番を「本体を捨てる、残りを確かめる、鍵を始末する」の3段階に分けておくと、あとから慌てずに済む。

もう一つ、削除の前に確認しておきたいのが、プラグインを動かすために別途入れたコマンドの存在である。ネットワークの状態を出すもの、暗号資産の価格を出すもの、電池の残量を出すものなど、公開されているプラグインの多くは外部のコマンドを呼び出す。本体を消してもそれらは残るため、片付けの対象として別に数えておく。

手順1 常駐を止めて、起動時の登録を外す

最初にやるのは、動いている本体を止めることである。メニューバーのアイコンを押し、メニューの中の終了を選ぶ。ここで終了させずにアプリケーションフォルダから捨てると、プロセスだけが残った状態になり、消したはずのアイコンがメニューバーに居座って見える。

次に、ログイン時に自動で立ち上がる登録を外す。macOS Ventura以降のシステム設定なら、一般の中のログイン項目と機能拡張に一覧がある。ここに残ったままだと、本体を消したあとにログインのたびに「開けません」という通知が出ることがある。Homebrewのcaskの定義を見ると、アンインストール時の指定として、識別子 com.xbarapp.app のプロセスを終了させることと、ログイン項目から xbar を外すことの2つが書かれている。手作業で消す場合も、この2つを先に済ませておく形になる。

プラグインの中に、一定の間隔でネットワークにつなぐものを置いていた場合は、この時点で通信も止まる。逆に言えば、止めるまでは動き続けている。数分おきに外部のAPIを叩くプラグインを入れていたなら、削除の前に相手側の利用状況を見ておくと、鍵を失効させるべきかどうかの判断がしやすい。

手順2 本体を消す

常駐が止まったら、アプリケーションフォルダの xbar.app をゴミ箱に入れる。Homebrew経由で入れた場合は、コマンドから消したほうが登録の食い違いが起きにくい。

brew uninstall --cask xbar
brew uninstall --zap --cask xbar

上の行は本体だけを消す。下の行の zap を付けると、cask の定義に書かれた設定ファイルまでまとめて捨てる。手作業で1つずつ確かめてから消したい場合は、上の行だけを使い、残りは次の節の一覧を見ながら自分で処理する。プラグインのフォルダも zap の対象に含まれているので、中身をまだ確認していない段階で zap を使うと、鍵の書かれたスクリプトを見ないまま捨てることになる点は覚えておきたい。

なお、Homebrewを使わずに公開されている配布物から入れた場合、本体はアプリケーションフォルダ以外の場所に置かれていることがある。ダウンロードフォルダのまま使っていた例もあるため、削除の前に本体の場所を確かめておく。メニューバーのアイコンからは本体の場所が分からないので、Finderの検索で xbar.app を探すか、アクティビティモニタでプロセスを選んで情報を開き、実行ファイルの場所を見る方法が早い。

複数の利用者アカウントがあるMacの場合、アプリケーションフォルダの本体は全員で共有していても、プラグインと設定はアカウントごとに分かれている。自分のアカウントで片付けても、別のアカウントには同じ構成がそのまま残る。共用のMacで消すときは、本体の削除と、アカウントごとの片付けを分けて数えておく。

手順3 残る4か所を確かめる

本体を消したあとに残るのは、次の4か所である。Homebrewのcaskの定義に列挙されているもので、2026年9月10日に確認した内容になる。

場所 中身 扱い
~/Library/Application Support/xbar プラグインのスクリプトと、その設定 中身を確認してから消す
~/Library/Caches/com.xbarapp.app 一時ファイル そのまま消してよい
~/Library/Preferences/com.xbarapp.app.plist アプリの設定 そのまま消してよい
~/Library/WebKit/com.xbarapp.app 画面描画に使うWebKitの作業領域 そのまま消してよい

4つのうち、注意して扱うべきなのは1つ目だけである。2つ目から4つ目は、アプリが自分で作った作業用のファイルなので、消しても失うものはない。逆に1つ目には、自分で書いたスクリプトや、配布元から入れたプラグインの改変版が入っている。書き換えた設定を別のMacでも使うつもりなら、削除の前にこのフォルダごと別の場所に控えを取っておく。

再インストールの可能性を残しておきたい場合も、1つ目だけを残して他を消すという扱いができる。設定は作り直せるが、自分で書いたスクリプトは作り直せないためである。

プラグインのフォルダは、消す前に開く

プラグインのファイル名には規則がある。開発元の資料によれば、名前と更新間隔と拡張子を点でつないだ形で、date.1m.sh なら1分ごとに実行される。指定できる形は、10s のような秒、1m のような分、2h のような時間、1d のような日である。この規則を知っていると、フォルダを開いたときに、どのスクリプトがどれくらいの頻度で動いていたのかがファイル名だけで分かる。

確認しておきたいのは中身のほうで、順番としては次のようになる。

  • テキストエディタでスクリプトを開き、token、key、secret、password といった語が本文に書かれていないかを見る
  • 書かれていた場合は、その鍵を発行したサービスの管理画面で失効させる。ファイルを消すだけでは、鍵そのものは有効なまま残る
  • スクリプトが呼び出している外部のコマンドを控える。jq や curl のような汎用のもの以外は、そのプラグインのために入れた可能性が高い
  • 控えを取るなら、フォルダごと別の場所へ移す。個別に選ぶと、設定ファイルだけを取り残しやすい

鍵の始末は、削除そのものより優先度が高い。ファイルを消せば手元からは見えなくなるが、発行済みの鍵は相手のサービス側で生き続ける。ゴミ箱を空にする前に、この確認だけは済ませておきたい。バックアップを取っている場合はさらに注意が要る。Time Machineの世界には削除前のスクリプトが残るため、鍵を失効させないまま消すと、控えの中に有効な鍵が残り続けることになる。

もう一点、プラグインは実行権限が付いた状態で置かれている。開発元の資料でも、chmod で実行できるようにすることと、先頭行に /usr/bin/env を使うことが案内されている。つまり、フォルダの中にあるのは設定ファイルではなく、そのまま動くプログラムである。中身を読まずに残しておくより、読んで判断してから消すか控えるかを決めるほうが、後々の面倒が少ない。

更新の状況は、事実として把握しておく

削除の判断材料として、公開されている履歴も見ておく。このアプリの配布ページで最新とされているのは v2.1.7-beta で、公開日は2021年10月29日である。この版では、プラグインの実行を打ち切るまでの時間が1分から2分に延びる変更が入っている。ライセンスはMITで、動作条件は macOS 10.15 Catalina以降と案内されている。

更新が長く止まっていること自体は、いま動いているかどうかとは別の話になる。実際、Homebrewのcaskには現在も同じ版が登録されており、配布は続いている。ただし、macOSの世代が上がったときに、権限の扱いや描画の仕様変更に合わせて直される保証はない。そこをどう見るかは読む側が決める部分で、いま動いているなら使い続ける、動かなくなったのを機に消す、という判断はどちらもあり得る。

似た用途の道具を探す場合も、同じ観点で見ておくと比較しやすい。最終更新がいつか、動作条件に載っているmacOSの範囲はどこまでか、配布の形は買い切りか期間契約か。この3つを並べるだけで、候補はかなり絞れる。

消したあと、メニューバーはいくつ減るか

このアプリの特徴は、プラグイン1つにつきメニューバーの項目が1つ増えることである。天気、株価、電池、ネットワークと入れていたなら、削除で減るのは4つになる。1つのアプリを消して4つ減るという意味では、片付けの効果は大きい。

ただし、消したあとに残る混雑は別の問題として残る。クラウドストレージ、パスワード管理、チャット、バックアップ、会議、入力の切り替えといった常駐アプリは、それぞれ独立してメニューバーに項目を置く。ここで一度、残った項目を押す頻度で仕分けておくと、次に何を減らすかが決まる。1日に何度も押すもの、状態を見たいときだけ押すもの、一度も押したことがないもの。この3つに分けると、たいていは最初の枠に入るものが2つか3つしかない。

何を残し、何を隠すかを決める

押す頻度で仕分けたあとの選択肢は、消すか、隠すか、そのまま置くかの3つになる。消せないもの、たとえば会社から入れるよう指定されている常駐アプリは、隠す側に回す。このとき決め手になるのが、隠したアイコンを、メニューバーを畳んだまま押してその場でメニューを開けるかどうかである。畳んだ列から取り出す手間が毎回かかる作りだと、数日で元の並びに戻ってしまう。

プラグインを1つずつ止めて項目を減らしていた人にとって、この考え方は馴染みやすいはずである。表示する項目を選ぶ作業そのものは同じで、対象がスクリプトの出力から、他のアプリのアイコンに変わるだけになる。何を表に残して何を畳むかを決める側の機能はできることにまとまっており、畳んだ列の中のアイコンをどう押すかもそこで確かめられる。導入時に求められる許可の種類はよくある質問に整理されている。同じ用途の道具は複数あるので、対応するmacOSの範囲を並べたい場合はほかの道具との違い、支払いの形を先に決めたい場合は料金を見る流れになり、手元で試すならダウンロードから入手できる。

削除の順番をもう一度並べておく。常駐を止めてログイン項目を外し、本体を消し、残る4か所のうちプラグインのフォルダだけ中身を見てから捨てる。鍵が書かれていたら発行元で失効させる。ここまで済ませてから、メニューバーに残った項目を押す頻度で仕分ける。この順で進めれば、消したはずのものが後から出てくる状態を避けられる。

よくある質問

本体をゴミ箱に入れるだけでは何が残る?

プラグインのスクリプトと設定が残る。置き場所は ~/Library/Application Support/xbar で、ここには自分で書いたスクリプトや配布元から入れたものが入っている。ほかに、キャッシュ、設定のplist、WebKitの作業領域の3か所が残るが、こちらはアプリが自分で作った作業用のファイルなので消して差し支えない。

Homebrewで入れた場合はどう消すのがよい?

brew uninstall --cask xbar で本体を消し、設定まで含めて片付けるなら --zap を付ける。ただし zap の対象にはプラグインのフォルダも含まれるため、鍵が書かれたスクリプトがないかを確かめる前に使うと、中身を見ないまま捨てることになる。順番としては、確認してから zap を使う形が安全になる。

プラグインに書いたAPIキーは、ファイルを消せば無効になる?

無効にはならない。発行済みの鍵は、発行元のサービス側で生き続ける。削除の前にスクリプトを開いて token や secret といった語を探し、見つかった鍵は発行元の管理画面で失効させる。ファイルを消すのはそのあとでよい。

更新が止まっているようだが、いま使っていて問題はある?

配布ページで最新とされているのは v2.1.7-beta で、公開日は2021年10月29日になる。動作条件は macOS 10.15 Catalina以降と案内されており、現在もHomebrewから入手できる。更新が止まっていること自体は不具合ではないが、macOSの世代が上がったときに合わせて直される保証はない点は判断材料になる。

記事一覧へ戻る