はじめに
この記事は、UUUM Advent Calendar 2018 24日目です。
- 7日目: JavaScriptで関数型ゲームエンジンを作るよ!part1
- 15日目: 自分の .emacs.d について書くよ
- 20日目: Webの技術でYoutube Viewer作った
12/24が埋まってないのが気持ち悪かったので書きました。
ちなみに、12/24は暇すぎて nginx.conf
と格闘していました。来年は予定が入りますように。。。
投稿日が1/4なので簡単に今年の目標を書くと、「強いインフラエンジニアになる」です。
インフラエンジニアになるにあたって、まずは dotfiles
からかなと思い、正月を溶かしてつくりました。
さいきょうのdotfiles
を作りたい
せっかく作るんだから、めちゃくちゃイケてる物を作りたい!といういつもの病気が発症し、とりあえず世の中に転がってる dotfiles
を片っ端から読んでいきました。
そんな中、へーしゃCTOの dotfiles
が最高にイケてたので パクって 参考にしながら作りました。
構成(2019/1/4現在)
repo: takeokunn/dotfiles
dotfiles ) tree .
.
├── Makefile
├── README.md
├── bin
│ └── brew-init.sh
├── config
│ ├── Makefile.sample
│ ├── config.sh.sample
│ └── homebrew
│ ├── pkgs.txt
│ └── taps.txt
├── modules
│ ├── editorconfig
│ │ └── dot.editorconfig
│ ├── fish
│ │ ├── Makefile
│ │ └── config.fish
│ ├── git
│ │ ├── dot.gitconfig
│ │ └── dot.gitignore
│ ├── oh-my-fish
│ │ ├── Makefile
│ │ ├── bundle
│ │ ├── channel
│ │ └── theme
│ ├── tmux
│ │ └── dot.tmux.conf
│ └── vim
│ ├── Makefile
│ └── dot.vimrc
├── src
│ ├── make
│ │ ├── dot.mk
│ │ ├── http.mk
│ │ └── os.mk
│ └── shell
│ ├── init
│ │ └── constants.sh
│ └── init.sh
└── tmp
簡単な解説
-
make
を叩くと、modules/*/dot.*
が~/
に展開される - さらに、
modules/*/Makefile
のタスクも実行される -
./bin/brew-init.sh
を叩くと必要なpackageをhomebrewでinstallできる
今後やりたいこと
takeokunn/.emacs.d をこの dotfiles
に入れようとしたが、 quicklisp
や sbcl
など依存関係が結構あり、うまく Makefile
を書けなかった。いつか頑張るかもしれない。
oh-my-fish
周りの Makefile
がうまく書けなくて苦労した(してる)
homebrew
向けにしかまだ書ききれてないので、 yum
や apt
向けにも拡張していきたい
さいごに
Makefile
めっちゃ良い、 gulp
や npm scripts
が霞むほど良い。