Skip to content

Instantly share code, notes, and snippets.

@ishideo
Last active June 21, 2020 19:40
Show Gist options
  • Save ishideo/701144bd8b94c7f6c07575522c3c4788 to your computer and use it in GitHub Desktop.
Save ishideo/701144bd8b94c7f6c07575522c3c4788 to your computer and use it in GitHub Desktop.
- hosts: localhost
connection: local
gather_facts: no
sudo: no
vars:
homebrew_taps:
- homebrew/binary
- homebrew/versions
- homebrew/dupes
- homebrew/dupes
- caskroom/cask
- railwaycat/emacsmacport
- d12frosted/emacs-plus
- sanemat/font
- neovim/neovim
- rogual/neovim-dot-app
- neovim/homebrew-neovim
- tkengo/highway
- monochromegane/pt
- caskroom/homebrew-fonts
- homebrew/science
- josegonzalez/php
- rcmdnk/rcmdnkpac
- aereal/homebrew-aereal_casks
- hirocaster/homebrew-mozc-emacs-helper
- snmts/roswell
homebrew_packages:
- { name: editorconfig }
- { name: selenium-server-standalone }
- { name: nodebrew }
- { name: cask }
- { name: fish }
- { name: fzf }
- { name: scala }
- { name: sbt }
- { name: ispell }
- { name: aspell }
- { name: mycli }
- { name: cmigemo, install_options: '--HEAD' }
- { name: mozc-emacs-helper }
- { name: parse-plist }
- { name: readline }
- { name: pyenv }
- { name: pyenv-virtualenv }
- { name: pyenv-virtualenvwrapper }
- { name: ack }
- { name: highway }
- { name: sift }
- { name: pt }
- { name: cabextract }
- { name: p7zip }
- { name: unrar }
- { name: xz }
- { name: scons }
- { name: msgpack }
- { name: libpng }
- { name: freetype }
- { name: jpeg }
- { name: libusb-compat }
- { name: fontconfig }
- { name: libtiff }
- { name: gd }
- { name: libgphoto2 }
- { name: little-cms2 }
- { name: jasper }
- { name: libicns }
- { name: makedepend }
- { name: sane-backends }
- { name: openssl, state: 'linked', install_options: 'force' }
- { name: python }
- { name: clisp }
- { name: sbcl }
- { name: roswell }
- { name: swift }
- { name: lua }
- { name: leiningen }
- { name: clojurescript }
- { name: ansible }
- { name: coreutils }
- { name: the_silver_searcher }
- { name: git }
- { name: git-flow }
- { name: httpie }
- { name: htop }
- { name: gdb }
- { name: iperf }
- { name: terminal-notifier }
- { name: gettext }
- { name: neovim, install_options: '--HEAD'}
- { name: neovim-dot-app }
- { name: ranger, install_options: 'w3m', 'lynx', 'highlight', 'atool', 'mediainfo', 'xpdf', 'libcaca', 'imlib2' }
- { name: 'vim', install_options: '--HEAD', 'with-lua', 'override-system-vim', '--with-clientserver' }
- { name: 'macvim', install_options: '--HEAD', 'override-system-vim', 'with-lua', '--with-clientserver'}
- { name: 'emacs', install_options: '--HEAD', '--use-git-head', '--with-cocoa', '--srgb', 'with-gnutls', 'with-librsvg', 'with-imagemagick', 'with-spacemacs-icon' }
- { name: 'emacs-plus', install_options: '--HEAD', '--use-git-head', 'with-cocoa', '--srgb', 'with-gnutls', 'with-librsvg', 'with-imagemagick', 'with-spacemacs-icon' }
- { name: zsh, install_options: 'disable-etcdir' }
- { name: zsh-completions }
- { name: zsh-syntax-highlighting }
- { name: wget }
- { name: doxygen }
- { name: ffmpeg, install_options: 'with-faac' }
- { name: curl }
- { name: cmake }
- { name: autoconf }
- { name: automake }
- { name: expat }
- { name: pkg-config }
- { name: ctags }
- { name: tree }
- { name: lv }
- { name: nkf }
- { name: libxml2 }
- { name: libxslt }
- { name: libyaml }
- { name: libtool }
- { name: libusb }
- { name: jq }
- { name: jsonpp }
- { name: go }
- { name: guile }
- { name: direnv }
- { name: peco }
- { name: hub }
- { name: tig }
- { name: fish }
- { name: rbenv }
- { name: ruby-build }
- { name: tofrodos }
- { name: fabric }
- { name: lha }
- { name: flow }
- { name: mysql }
- { name: sqlite }
- { name: redis }
- { name: imagemagick }
- { name: mercurial }
- { name: packer }
- { name: xz }
- { name: socat }
- { name: rlwrap }
- { name: tmux }
- { name: tmux-mem-cpu-load }
- { name: unrar }
- { name: tree }
- { name: wine }
- { name: winetricks }
- { name: reattach-to-user-namespace }
- { name: phantomjs }
- { name: graphviz }
- { name: autojump }
- { name: gibo }
- { name: gauche }
- { name: ocaml }
- { name: ghc }
- { name: cabal-install }
- { name: haskell-stack }
- { name: vimpager }
- { name: heroku-toolbelt }
- { name: imagemagick }
- { name: apple-gcc42 }
- { name: jenkins }
- { name: docker }
- { name: source-highlight }
- { name: chromedriver }
- { name: ranger }
- { name: w3m }
- { name: lynx }
- { name: highlight }
- { name: atool }
- { name: mediainfo }
- { name: libcaca }
- { name: imlib2 }
homebrew_cask_packages:
- { name: xquartz }
- { name: emacs-mac }
- { name: found }
- { name: fluid }
- { name: jumpcut }
- { name: slate }
- { name: spectacle }
- { name: geektool }
- { name: textwrangler }
- { name: boot2docker }
- { name: alfred }
- { name: rstudio }
- { name: font-m-plus }
- { name: sequel-pro }
- { name: clipmenu }
- { name: caffeine }
- { name: filezilla }
- { name: cyberduck }
- { name: macdown }
- { name: kindle }
- { name: cd-to }
- { name: iterm2 }
- { name: firefox }
- { name: google-chrome }
- { name: google-japanese-ime }
- { name: adobe-reader }
- { name: libreoffice }
- { name: qlstephen }
- { name: mysqlworkbench }
- { name: java }
- { name: skype }
- { name: slack }
- { name: pandoc }
- { name: sourcetree }
- { name: gitx }
- { name: hosts }
- { name: shupapan }
- { name: burn }
- { name: easyfind }
- { name: haroopad }
- { name: textmate }
- { name: keepassx }
- { name: shiftit }
- { name: karabiner }
- { name: seil }
- { name: flux }
- { name: dash }
- { name: skitch }
- { name: seashore }
- { name: atom }
- { name: keepassx }
- { name: sublime-text }
- { name: vagrant }
- { name: virtualbox }
- { name: hipchat }
- { name: skim }
- { name: handbrake }
- { name: inkscape }
- { name: mou }
- { name: onyx }
- { name: ccleaner }
- { name: appcleaner }
- { name: xmind }
- { name: mplayerx }
- { name: coteditor }
- { name: flexiglass }
- { name: 1password }
- { name: vlc }
- { name: macvim }
- { name: opera }
- { name: vivaldi }
- { name: the-unarchiver }
- { name: bettertouchtool }
- { name: cakebrew }
- { name: mi }
- { name: commander-one }
- { name: playonmac }
- { name: aquaskk }
- { name: platypus }
- { name: typora }
tasks:
- name: homebrew の tap リポジトリを追加
homebrew_tap: tap={{ item }} state=present
with_items: homebrew_taps
- name: homebrew をアップデート
homebrew: update_homebrew=yes
# brew
- name: brew パッケージをインストール
homebrew: >
name={{ item.name }}
state={{ item.state | default('latest') }}
install_options={{
item.install_options | default() | join(',')
if item.install_options is not string
else item.install_options
}}
with_items: homebrew_packages
register: brew_result
- name: brew パッケージの情報保存先ディレクトリを作成
file: path=brew_info state=directory
- name: brew パッケージの情報を保存
shell: brew info {{ item }} > brew_info/{{ item }}
with_items: brew_result.results | selectattr('changed') | map(attribute='item') | map(attribute='name') | list
# cask
- name: Install homebrew-cask
homebrew: name=brew-cask state=latest
- name: Install cask package
homebrew_cask: name={{ item.name }} state={{ item.state|default('installed') }}
with_items: homebrew_cask_packages
register: cask_result
- name: cask パッケージの情報保存先ディレクトリを作成
file: path=cask_info state=directory
- name: cask パッケージの情報を保存
shell: brew cask info {{ item }} > cask_info/{{ item }}
with_items: cask_result.results | selectattr('changed') | map(attribute='item') | map(attribute='name') | list
- name: Install oh-my-zsh
shell: curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh
args:
creates: ~/.oh-my-zsh/
- name: Install xquartz
homebrew_cask: name=xquartz
- name: Install fontforge
homebrew: name=fontforge
- name: Install Ricty
homebrew: name=ricty
- name: Copy font file
shell: cp -f $(brew --cellar ricty)/*/share/fonts/Ricty*.ttf ~/Library/Fonts/
args:
creates: ~/Library/Fonts/Ricty-Bold.ttf
notify: run fc-cache
- name: Spacemaces install
shell: git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d
- name: brew linkapps
shell: brew linkapps
- name: Install wine font
shell: winetricks allfonts
- name: python install
shell: pyenv install 3.5.2
args:
creates: ~/.pyenv/versions/3.5.2/bin/python
- name: Wine env install
shell: winetricks vb6run
shell: winetricks d3dx10
shell: winetricks comctl32ocx
shell: winetricks comdlg32ocx
- name: Antialias font
shell: winetricks fontsmooth=rgb
- name: Mac settings
shell: defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES
shell: defaults write com.apple.finder QLEnableTextSelection -bool true
shell: defaults write com.apple.finder ShowStatusBar -bool true
shell: defaults write com.apple.finder ShowPathbar -bool true
shell: defaults write com.apple.finder ShowTabView -bool true
shell: defaults write NSGlobalDomain WebKitDeveloperExtras -bool true
shell: defaults write com.apple.Safari ShowStatusBar -bool true
shell: defaults write com.apple.screencapture type -string "png"
shell: go get github.com/motemen/ghq
shell: go get github.com/peco/peco/cmd/peco
shell: ln -s /usr/local/bin/gtac /usr/local/bin/tac
shell: curl -L https://github.com/oh-my-fish/oh-my-fish/raw/master/bin/install | fish
shell: wget http://cs.sensiolabs.org/get/php-cs-fixer.phar -O /usr/local/bin/php-cs-fixer
shell: curl -sSfL https://raw.githubusercontent.com/ctjhoa/spacevim/master/vimrc.sample -o ~/.vimrc | vim
shell: pip install neovim
shell: pip install prompt_toolkit
shell: mkdir -p ~/.config/nvim/ && curl -sSfL https://raw.githubusercontent.com/tehnix/spaceneovim/master/vimrc.sample -o ~/.config/nvim/init.vim | nvim
shell: alias macvim="/Applications/MacVim.app/Contents/MacOS/Vim -g --remote-tab-silent $@"
shell: ranger --copy-config=all
handlers:
- name: run fc-cache
shell: fc-cache -vf
- name: killall Finder
shell: killall Finder
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment