mac でメニューバーのサードパーティアプリのアイコンを復活させる方法

メニューバーには最低限のアイコンのみ表示していたいので、普段は ClipMenu のステータスアイコンは非表示にしている。今回、間違ってホットキーの設定を解除した状態で環境設定画面を閉じてしまい、再び環境設定画面を表示できなくなり困っていた時の対処法を残しておく。

tl;dr;

plist を編集してメニューバーのステータスアイコンを復活させる

plist の編集

以下のファイルを編集する。

plist の編集はツールXcode に付属しているので、無ければインストールする。

open ~/Library/Preferences/com.naotaka.ClipMenu.plist

showStatusItem の値を 0 -> 1 に変更する。

アプリの再起動

Activity Monitor とかで一度アプリを落として再度立ち上げると、ステータスアイコンが復活しているはず。

まとめ

plist でステータスアイコンの表示・非表示を制御しているアプリの場合はこれでなんとかなる。

アプリごとに設定の名称は違うみたいなので、それっぽい設定の値を変えてみるといい。(ステータスアイコンが復活しなかった場合は、変更した値を元に戻しておいたほうが良さそう)

YAPC::Asia Tokyo 2014 に参加しました

そろそろ今年の YAPC を終わらせないといけないのでブログ書きます。*1

tl;dl

  • 今年も YAPC::Asia 有ってよかった!
  • キャパオーバー
  • 無限ビール
  • かき氷!かき氷!\\\ ٩( ˘ω˘ )و ////

当日ボランティアスタッフ

ボランティアスタッフでの参加(2年連続2回目)です。

今年は2日で締め切られるほど応募が殺到したので、気がついたら募集が終わっていて参加できなかった人もそこそこ居たみたいです。*2

去年と同じ会場で、担当した持ち場も去年と同じだったので今年は慣れた感じでした。941さんと牧さんが居ない*3のが寂しい感じでしたが、大きなトラブルも無く終えられたように思います。*4

会場のキャパ問題

去年はそれほどでもなかった気がしますが、今年は来場者が増えたこともあって多くのセッションで立ち見/座り見が出てしまいました。特に多目的教室2 は人気セッションも多く、かなり詰めていただいたにもかかわらず聴講をお断りすることもありました。*5

キャパ問題は、セッションを並行で持っている以上読みきれない部分もあって難しいところですね。サテライト視聴用のスペースを確保して、バッファを設けるのは一つの手じゃないかと思います。

無限ビール

会場になった協生館の 1F にはブリティッシュパブ「HUB」があり、去年はイベントが終わると必然的にそこで打ち上げが行われていたのですが、今年は何と HUB 貸し切りと 1,000杯フリードリンクという完璧な制度ができてました。*6

ビールサーバーの中身が冷えてなくて泡しか出なくて注げないなんてこともありましたが、ボトルワインに切り替えるという手で乗り切ったりもしました。

無限かき氷

DMM 様からのラムネ入りの美味しいかき氷は Twitter でもかなり話題にのぼりました。まだ数十万個の在庫を抱えているという噂も聞きますので、イベント主催者の方は寒くなる前に声をかけてみるのもいいのではないでしょうか。

まとめ

イベントから時間が開いてしまったわりに内容の薄い感想エントリになってしまいました。ただ、今年も十分に楽しかったので、来年も参加できるといいですね。

*1:ブログを書くまでが YAPC::Asia です

*2:まさかこれが原因ではないと思いたい https://twitter.com/941/status/473016217087647744

*3:牧さんは海外ゲストとのコミュニケーションの関係で実質スタッフ状態でしたが

*4:自分が知らないだけかもしれませんが

*5:防災上の都合で出入り口を立ち見で塞いでは行けないという事情もありました

*6:リクルートホールディングス様++ http://yapcasia.org/2014/08/yapcasia-party-and-hub.html

Chef で Bitbucket のプライベートリポジトリから Java コードを clone してきて deploy

掲題の通り、Chef で環境を構築してそのままアプリをデプロイしたい時の設定です。

Tomcat 前提ですが、Tomcat のインストール部分は省略してます。また、ここでは root ユーザでやってますが、適切なユーザを作成してファイル・ディレクトリの権限を付与した方がいいです。

Chef の git resource を使って bitbucket から clone

git "/tmp/app" do
  repository "git@bitbucket.org:my-repository/my-app.git"
  ssh_wrapper "/root/.ssh/ssh4bitbucket.sh"
end

git — Chef Docs

プライベートリポジトリだと Permission denied とか言われるはずなので、公開鍵認証を使用します。 鍵の作り方等は以下を参照してください。

git で ssh 使うために秘密鍵を配置

files/default に秘密鍵を置き、 Bitbucket には公開鍵を登録しておきます。

directory "/root/.ssh" do
  action :create
  mode   "700"
end
cookbook_file "/root/.ssh/id_rsa" do
  source "id_rsa"
  mode   "600"
end

directory — Chef Docs cookbook_file — Chef Docs

git resource で使用する ssh_wrapper を配置

ssh_wrapper では以下の2点を指定してます。

  • 秘密鍵の指定
  • ssh 接続時に Host Key のチェックで引っかかるので OFF にする
file "/root/.ssh/ssh4bitbucket.sh" do
  mode "700"
  content <<-EOL
    #!/bin/bash
    ssh -i /root/.ssh/id_rsa -o "StrictHostKeyChecking=no" "$@"
  EOL
end

file — Chef Docs

war ファイルを作成して配置

Maven プロジェクトを前提としています。

適切な resource や Cookbook が見つからなかったので、Shell でやります。

script "complie source code and set war file" do
  interpreter "bash"
  user        "root"
  code <<-EOL
    cd /tmp/app
    mvn install
    mvn package
    chown root:tomcat target/app.war
    mv -f target/app.war /usr/share/tomcat/webapp/app.war
  EOL
end

script — Chef Docs

まとめ

以上です。

ちなみに deploy という resource もChef には有るのですが、migrate のフェーズはあるものの、ビルドするタイミングがなかったので使用してません。ビルドの必要のない言語とかだとこの deploy を使ったほうがスッキリかけるかもしれません。