diff --git a/roles/common/tasks/main.yml b/roles/common/tasks/main.yml index 128b5fb..471f0f7 100644 --- a/roles/common/tasks/main.yml +++ b/roles/common/tasks/main.yml @@ -11,6 +11,8 @@ - strace - cacert-dot-org - the_silver_searcher + - zsh + - git - name: /etc/hosts template: src=hosts.j2 dest=/etc/hosts mode=0644 backup=yes - locale_gen: name=de_DE.UTF-8 state=present diff --git a/roles/container/files/pacman.conf b/roles/container/files/pacman.conf index dd366ac..968173e 100644 --- a/roles/container/files/pacman.conf +++ b/roles/container/files/pacman.conf @@ -1,5 +1,5 @@ # -# THIS FILE IS MANAGED BY ANSIBLE, DO NOT EDIT MANUALLY +# {{ ansible_managed }} # # /etc/pacman.conf # diff --git a/roles/container/files/vimrc b/roles/container/files/vimrc new file mode 100644 index 0000000..32297ba --- /dev/null +++ b/roles/container/files/vimrc @@ -0,0 +1,59 @@ +" {{ ansible_managed }} +set nocompatible " be iMproved +filetype off " required! +let mapleader="," " change the leader to be a comma vs slash + +let iCanHazVundle=1 +let vundle_readme=expand('~/.vim/bundle/Vundle.vim/README.md') +if !filereadable(vundle_readme) + echo "Installing Vundle.." + echo "" + silent !mkdir -p ~/.vim/bundle + silent !git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim + let iCanHazVundle=0 +endif + +set rtp+=~/.vim/bundle/Vundle.vim +call vundle#begin() + +Plugin 'tpope/vim-rails' +Plugin 'scrooloose/nerdtree' +Plugin 'slim-template/vim-slim' +Plugin 'scrooloose/syntastic' +" not compatible with vim on servers +" Bundle 'Valloric/YouCompleteMe' +Plugin 'airblade/vim-gitgutter' +Plugin 'bronson/vim-trailing-whitespace' +call vundle#end() + +if iCanHazVundle == 0 + echo "Installing Bundles, please ignore key map error messages" + echo "" + :BundleInstall +endif + +syntax on +filetype plugin indent on +set backupdir=~/.vim.backupdir +set backup " keep a backup file +set autoindent " copy indent from current line +set undofile " persistent undo +set undoreload=10000 +set undodir=~/.vimundo + +" Softtabs, 2 spaces +set tabstop=2 +set shiftwidth=2 +set expandtab + +command! -bar SudoWrite : + \ setlocal nomodified | + \ exe (has('gui_running') ? '' : 'silent') 'write !sudo tee % >/dev/null' | + \ let &modified = v:shell_error + +cmap w!! SudoWrite + +" Local config +if filereadable($HOME . "/.vimrc.local") + source ~/.vimrc.local +endif diff --git a/roles/container/files/zshrc b/roles/container/files/zshrc new file mode 100644 index 0000000..88d4d12 --- /dev/null +++ b/roles/container/files/zshrc @@ -0,0 +1,41 @@ +# {{ ansible_managed }} +# Path to your oh-my-zsh configuration. +ZSH=$HOME/.oh-my-zsh + +# Set name of the theme to load. +# Look in ~/.oh-my-zsh/themes/ +# Optionally, if you set this to "random", it'll load a random theme each +# time that oh-my-zsh is loaded. +# ZSH_THEME="steeef" +ZSH_THEME="robbyrussell" + +# Example aliases +# alias zshconfig="mate ~/.zshrc" +# alias ohmyzsh="mate ~/.oh-my-zsh" + +# Set to this to use case-sensitive completion +# CASE_SENSITIVE="true" + +# Comment this out to disable bi-weekly auto-update checks +DISABLE_AUTO_UPDATE="true" + +# Uncomment to change how many often would you like to wait before auto-updates occur? (in days) +# export UPDATE_ZSH_DAYS=13 + +# Uncomment following line if you want to disable colors in ls +# DISABLE_LS_COLORS="true" + +# Uncomment following line if you want to disable autosetting terminal title. +# DISABLE_AUTO_TITLE="true" + +# Uncomment following line if you want red dots to be displayed while waiting for completion +# COMPLETION_WAITING_DOTS="true" + +# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*) +# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ +# Example format: plugins=(rails git textmate ruby lighthouse) +plugins=(git common-aliases dircycle gem gitfast last-working-dir systemd pip python ruby svn urltools) + +[ -s ~/.zshrc.local ] && source ~/.zshrc.local + +source $ZSH/oh-my-zsh.sh diff --git a/roles/container/tasks/main.yml b/roles/container/tasks/main.yml index 652fac4..73d7449 100644 --- a/roles/container/tasks/main.yml +++ b/roles/container/tasks/main.yml @@ -8,11 +8,11 @@ service: name={{ item }} state=stopped enabled=no with_items: masked_services -- name: install essential packages - pacman: name={{ item }} state=present - with_items: - - htop - - strace - - cacert-dot-org - - the_silver_searcher +- user: name=root shell=/usr/bin/zsh +- name: Clone oh-my-zsh repo + git: repo=https://github.com/robbyrussell/oh-my-zsh.git dest=/root/.oh-my-zsh +- name: deploy .zshrc + copy: src=zshrc dest=/root/.zshrc - mount: name=/run/systemd/journal/ src=/mnt/journal fstype=none opts=bind,ro state=present +- name: deploy .vimrc + copy: src=vimrc dest=/root/.vimrc