わすれっぽいきみえ

みらいのじぶんにやさしくしてやる

結婚しました

2018年2月24日、婚姻届を提出しました。

今年に入って全然ブログ書いてなかったので、もうちょっと書く時間を作れたら良かったんですが、新しい生活が始まってから土日にいろいろやってて書く時間を作れてませんでした。

で、自分としては今日に向かうまでに色々準備が必要になるので、どうやって進めていこうかなーと思っていたわけです。*1

なので

qiita.com

こういうことを今もずっと続けておりました。

届け出を出したのが土曜日だったので、これからいろんな名義変更が発生します。それで何を変更しないといけないか洗い出してみたのですが、そのときにQiitaの記事に上げたシートに引越のときに必要な実務リストを出しておいたのが今になって役立ってます。

届け出出したとき、あんまり実感なかったんですが、むしろこれから出さないといけない書類もので、名字も前と違うのをたくさん書くことになるので実感しそうです。

今年もよろしくお願いします。

*1:「いきなり実務の話に入るあたり、お互い本当にロマンがないね」とお家で話すことがよくあります。

年末のPCお掃除

今年も色々あったのだけど、PCの中をあまりにも整理できてなかったので、ちょっとだけ掃除してた。

yarnをbrew経由で入れ直す

nodeにもpackage-lock.jsonが使えるバージョンが出たので、yarnを捨てようかなと思ってたんだけど、yarn自体はまだ開発されてるっぽいし急に乗り換える気にまだなれなくて、引き続き使うことにした。

kimikimi714.hatenablog.com

去年以来updateしてなかったのでyarnのバージョンをあげようと思った。

$ yarn self-update

これを実行したらupdateされると思ったんだけど、yarn self-update | Yarn

Note: self-update is currently not available, which means updates must be done manually. See issue #1139 for details.

と記載があってダメだった。なのでnpm経由で入れたyarnをhomebrew経由にしてupdateしやすくしておく。

$ npm remove -g yarn
$ type yarn
yarn not found
$ brew install yarn
$ type yarn
yarn is /usr/local/bin/yarn
$ yarn --version
1.3.2

これでバージョンが上がった。*1

npm install -gで入れてたパッケージたちをyarn.lock管理下に置く

次は npm install -g で入れたパッケージたちが何なのかを特定して、yarn.lockで管理できるようにする。これでPCに何かあってもサクっとinstallできる。

https://stackoverflow.com/questions/32628351/export-import-npm-global-packages

これを見ると npm list -g --depth=0 で依存パッケージを無視して、globalに入れたパッケージ名だけを取得できるとあるのでやってみた*2

$ npm list -g --depth=0
/usr/local/lib
├── generator-chrome-extension@0.7.0
├── gulp@3.9.0
├── gulp-cli@2.0.0
├── jshint@2.8.0
├── npm@5.6.0
└── yo@2.0.0

まだそんなに入ってないから、手動で yarn global add <package> で入れちゃう。

$ yarn global list
yarn global v1.3.2
info "asar@0.14.0" has binaries:
   - asar
info "bower@1.8.2" has binaries:
   - bower
info "electron-prebuilt@1.4.13" has binaries:
   - electron
info "gulp@3.9.1" has binaries:
   - gulp
info "gulp-cli@2.0.0" has binaries:
   - gulp
info "jshint@2.9.5" has binaries:
   - jshint
info "yo@2.0.0" has binaries:
   - yo
   - yo-complete
✨  Done in 4.41s.

gitignoreGlobalの見直し

もともとはとてもシンプルなものを作ってたんだが

www.gitignore.io

こういったサービスがあるのを知ったので、自分が使ってるツールの名前を入れて生成してもらった。ただし .local だけは自分で追加した。

# 適当なプロジェクトで適当なファイルを置いても問題ないディレクトリの名前
.local

昔、こういうやり方でgitのindexにはのせたくないけどテスト用スクリプトをお気軽におけるディレクトリを作るのがいろいろ試せてよいという趣旨の記事を読んだことがあって、そのやり方を今も踏襲している。

globalなpackage.jsonとyarn.lockをgit管理下に置く

さっき上で yarn global add <package> 実行したわけだが、そのあとのpackage.jsonらはgithubにおいておきたい。まずそれらがどこに出力されるかというと、ここになる。

$ tree -L 1 ~/.config/yarn/global
~/.config/yarn/global
├── node_modules
├── package.json
└── yarn.lock

1 directory, 2 files

なのでdotfilesを入れてるディレクトリに実体をおいて、 ~/.config/yarn/global/package.json と ~/.config/yarn/global/yarn.lock にシンボリックリンクを貼り直す。

nodebrewを使ってnodeのバージョンを上げる

nodeのバージョンはとても上がっていたので上げることにした。今本家サイトで確認するとrecommendedは8.9.3だったので8.9.3を入れる。

$ nodebrew install v8.9.3
$ nodebrew ls
v7.0.0
v8.9.3

current: v7.0.0
$ nodebrew use v8.9.3
$ nodebrew ls
v7.0.0
v8.9.3

current: v8.9.3

これでやろうと思えばpackage-lock.jsonもいじれるようになった。

結果

これになりました。

github.com

*1:前のバージョンを忘れた

*2:すでにasarとbowerは削除したあとだったのでリストに載ってない。その分 yarn global list 実行後のパッケージと差分がある。

GitHubとGistのssh鍵は同じはずなのにPermission Deniedと怒られた

表題の通り。

すでにローカルにあったメモをGitHubじゃなくてgistの方にあげようと突然思いついて、ペライチのmarkdownを適当に配置したgistを作ったあと、そのリポジトリgit remote add origin *repo name* を実行して、pullを実行したら以下のようなエラーが出た。

$ git pull -p
Warning: Permanently added the RSA host key for IP address '***' to the list of known hosts.
git@gist.github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

弾かれる理由がわからなかったので実験もしてみた。

$ ssh -T git@github.com
Hi kimikimi714! You've successfully authenticated, but GitHub does not provide shell access.

$ ssh -T git@gist.github.com
git@gist.github.com: Permission denied (publickey).

なるほど。もしかするとgistの方で読む必要のあるssh鍵がわからないのかもしれないと踏んだ。実際私のPCでは鍵を幾つか作っていた。

$ ll ~/.ssh
total 40K
-rw------- 1 kimikimi714 staff  801 12 24 16:54 config
-rw------- 1 kimikimi714 staff 1.7K  2 25  2014 github_rsa
-rw-r--r-- 1 kimikimi714 staff  403  2 25  2014 github_rsa.pub
-rw------- 1 kimikimi714 staff 1.7K 12 18  2016 id_rsa
-rw-r--r-- 1 kimikimi714 staff  414 12 18  2016 id_rsa.pub
-rw-r--r-- 1 kimikimi714 staff 7.6K 12 24 16:45 known_hosts

たぶんgistへ接続するときにどの鍵を使えばいいかがわからなくて id_rsa の方を使ってそう。なのでsshのテスト時に明示的に鍵を指定してみる。

$ ssh -i ~/.ssh/github_rsa -T git@gist.github.com
Hi kimikimi714! You've successfully authenticated, but GitHub does not provide shell access.

予想的中。というわけで以下のようにconfigを書き換えた。

Host github.com
  IdentityFile ~/.ssh/github_rsa
Host gist.github.com
  IdentityFile ~/.ssh/github_rsa

これで鍵を指定しないでsshのテストを実行すると

ssh -T git@gist.github.com
Hi kimikimi714! You've successfully authenticated, but GitHub does not provide shell access.

🎉