パスワードマネージャーをMitroに移行しました

パスワードマネージャーのMitroTwitterに買収されてOSSになったとのニュースを見て、調べてみたら良さそげだったので、LastPassから移行してみました。

これまで、パスワード管理を全ての端末で無料で済ませようと思ったらKeePassしか選択肢がありませんでしたが、このMitroも全ての端末で無料で使用できます。それに加えてMitroは、KeePassと違いLastPassのようにウェブ上にデータベースを保存するタイプなので、専用のローカルサーバーを立てる必要もありません。

さて、そんなわけで今のところMitroがLastPassよりダメだと思うところは、

  • 自動ログイン出来ない
  • 表示言語が英語のみ
  • ホットキーの設定ができない
  • ほとんど設定がない

優れていると思う点は、

  • 全ての端末で無料
  • ブラウザ拡張の小窓からサイトアカウントを選んでワンクリックでサインインできる
  • OSS
  • 親会社がTwitterで将来性がありそう
  • デザインがモダン()

こんな感じだと思います。まだまだ機能が少ないですが、とりあえず今後に期待が持てそうです。


追記(2014-08-08):

結局、思ったとおりに動作してくれなくてLastPassに戻しました。。。 iOSのほうはどうしたものか・・・

werckerでgithubにreleaseをdeployするまでの道のり

せっかくgolangでプログラムを書いたので、id:motemenさんがWercker で Go のプロジェクトをクロスコンパイルし、GitHub にリリースするで書かれている通りにやってみました。 少し手間取ったので、手順を自分用に順序立てて簡単にまとめておきます。

  1. wercker.ymlを書きます。github.com/motemen/ghq/blob/master/wercker.ymlを修正して流用すると楽ちんです。boxは自分で作らないでも、そのまま公開されているものを使えばOKです。

  2. addしてcommitしてpush

  3. GithubリポジトリのSettingsでCollaboratorsにwerckerbotを追加。

  4. Authorized applicationsにアクセスして、Personal access tokensを作成します。Privateリポジトリの場合はrepo、Publicリポジトリの場合はpublic_repoにチェックを入れること。Publicの場合はrepoのチェックを外すのを忘れないこと。

  5. werckerでアプリを追加。順に項目を埋めていけば特に問題なく追加できます。

  6. アプリの追加ができたら、アプリのページのSettingsでDeploy targetsを設定します。Custom deployを選択して、適当にDeploy target nameを付けて、Auto deployにチェックを入れて、branchにmasterを指定します。

  7. そのままDeploy pipelineに変数を追加します。nameをGITHUB_TOKEN、textを4.で取得したトークンを入力して保存します。

  8. ここまで終わったら試しにBuildしてみます。Buildに成功しても、途中でエラーが出たりしている場合があるのでサッとログに目を通しておきます。

  9. 問題がなかったら、Deployのほうもチェックしてみます。Deploy toボタンを押してdeploy先を選択して実行します。Deployが完了したら、Githubリポジトリのほうをチェックして問題ないか確認して終わりです。

golangでリネームツール作ってみました

クロスプラットフォームで使えるリネームツールが欲しくて作ってみました。

概要

あらかじめ設定ファイルに記述しておいたリネームコマンドをファイルに適用させることができます。

例えば、

{
  "ltrim": {
    "action": "regexp_replace",
    "args": ["^\\s+", "", "true"]
  },

  "rtrim": {
    "action": "regexp_replace",
    "args": ["\\s+$", "", "true"]
  },

  "trim": {
    "action": "order",
    "args": ["ltrim", "rtrim"]
  }
}

このようにJSON形式で設定ファイルを書いておくと、

$ ysrenamer rtrim "foo/bar .hoge"
foo/bar .hoge -> foo/bar.hoge

$ ysrenamer trim "foo/   bar .hoge"
foo/   bar .hoge -> foo/bar.hoge

こんな感じでコマンドに従ってファイルリネームを実行します。


golangでプログラム書き始めて2日目だけど、とりあえず動くものが作れました。 やはりコンパイラ言語の中ではかなり書きやすいと思います。

ディレクトリ構造はpecoを参考にさせてもらいました。 go getの挙動とかよく分かってないので不安でしたけれど、試してみたところ正常にインストールされるようになってました。

当面は有名どころのgolangOSSを読んで学習しながら、機能拡張してければなと思ってます。

golang始めました

golangJavaより書きやすそうだったので始めてみたら、なかなか良い感じで、今まで使わなかったことを後悔し始めてます。。。

ファイルの依存関係も分かりやすいし、便利なパッケージもいっぱいあるし、型推論もできますし。 それにクロスプラットフォーム対応がすごく楽ですしね!

高頻度で実行するプログラムとかまでRubyで書いちゃっててモッサリしてるので、練習がてらにgolangで書きなおしてます:D

iMacのHDDがお亡くなりになりました

先日、朝起きてiMacの電源スイッチを押したらHDDが認識されなくなってました・・・。

享年3歳でした。

まともな人は、こんなときのためにTimeMachineでバックアップ取ってたり、インストールメディアを作ってたりするんでしょうが、僕は全くそういうことをしていませんでした。 しかし、前日にOSをクリーンインストールする準備をしていたので、必要なデータは外付けHDDに保存してあり、痛手は皆無でした。まさに間一髪。

僕が使ってるiMac 2011 Midの一部は、HDDが故障する可能性があるとのことで、HDDを無償交換してもらえるそうですが、運が良いのか悪いのか対象外でした。。。

そんなわけで、解体に必要なトルクスドライバーのセット、吸盤とあわせて新しいHDD(WD Blackの1TBにしました。1プラッタだしパフォーマンス良さそげだし安かったので。)を買って、解体ついでにエアダスターなどで積もりに積もった埃を掃除、HDDを交換、組み立て直して電源を入れたらネットワークリカバリーに進んで、ディスクユーティリティで新しいHDDをGUIDパーティション方式でHFSフォーマットして、Lionをインストール、無事ログインできたらMarvericksのインストールメディアを作成(6GBあれば足りる)、インストールメディアから起動し直して、ディスクユーティリティでLionを消して、クリーンインストール、なんか英語になってるのでシステム設定で日本語にして再起動、復旧完了しました。

ただ、HDDを純正から替えるとファンが常時フル回転してしまうのでソフトウェアのほうで制御してやらないと駄目みたいです。最大数の5500回転を限界突破しててビビりました...。 ファン制御にはMacs Fan Controlがフリーウェアだし、Bootcampで入れたWindowsでも使えるみたいなのでオススメです。

最後に、OS X Mavericks インストールとDVDインストールディスクを参考にさせてもらってインストールメディアをDVD-R DLに焼いておきました。これで少しは安心できる・・・!