command: setupcon
# Miscellaneous.
- - name: Ensure dotfile symlinks
+ - name: Ensure minimal dotfile symlinks
file: state=link force=yes src={{item}} dest=~/.{{item|basename}}
- with_fileglob: ~/config/ansible/files/dotfiles/*
+ with_fileglob: ~/config/ansible/files/dotfiles/minimal/*
+ - name: Ensure root user dotfile symlinks
+ file: state=link force=yes src={{item}} dest=~/.{{item|basename}}
+ with_fileglob: ~/config/ansible/files/dotfiles/root/*
- name: ensure ~/.vimbackups directory
file: state=directory dest=~/.vimbackups
- name: ensure man-db, manpages is installed
- manpages
- name: set /etc/localtime
file: state=link force=yes src=/usr/share/zoneinfo/Europe/Berlin dest=/etc/localtime
- - name: ensure git, vim, less are installed
+ - name: ensure sudo, git, vim, less are installed
apt: name={{item}} state=present
with_items:
- git
- vim
- less
- - name: create user plom
- user: name=plom
+ - sudo
- name: ensure boot messages are not cleared on start up
replace: dest=/etc/systemd/system/getty.target.wants/getty@tty1.service regexp='^TTYVTDisallocate=yes.*$' replace='TTYVDisallocate=no'
+
+ # Config user.
+ - name: create user plom
+ user: name=plom
+ - name: have config repo in user directory
+ git: repo=git://github.com/plomlompom/config dest=/home/plom/config
+ become_user: plom
+ become_method: su
+ - name: ensure user has sudo privileges
+ command: adduser plom sudo
+++ /dev/null
-# Bash as a non-login shell in non-POSIX-mode does not read in the startup
-# script at the path in $ENV. This forces it to still read in the ~/.shinit
-# startup script for non-login shells.
-
-. ~/.shinit
+++ /dev/null
-[user]
- name = Christian Heller
- email = c.heller@plomlompom.de
--- /dev/null
+# Bash as a non-login shell in non-POSIX-mode does not read in the startup
+# script at the path in $ENV. This forces it to still read in the ~/.shinit
+# startup script for non-login shells.
+
+. ~/.shinit
--- /dev/null
+[user]
+ name = Christian Heller
+ email = c.heller@plomlompom.de
--- /dev/null
+# Initialization for login shells.
+
+# Tell interactive shells to look in ~/.shinit for setup.
+ENV=$HOME/.shinit
+export ENV
+. $ENV
--- /dev/null
+# Settings for interactive shells.
+
+# Ensure shell truly is interactive to avoid confusing non-interactive shells.
+if [[ $- == *i* ]]; then
+
+ # Fancy colors for ls.
+ alias ls="ls --color=auto"
+
+ # Use vim as default editor for anything.
+ export VISUAL=vim
+ export EDITOR=$VISUAL
+
+ # Colored prompt with username, hostname, date/time, directory.
+ colornumber=7 # Default to white if no color set via colornumber dotfile.
+ colornumber_file=~/.shinit_color
+ if [ -f $colornumber_file ]; then
+ colornumber=`cat $colornumber_file`
+ fi
+ tput_color="$(tput setaf $colornumber)$(tput bold)"
+ tput_reset="$(tput sgr0)"
+ # Bash confuses the line length when not told to not count escape sequences.
+ if [ ! "$BASH" = "" ]; then
+ tput_color="\[$tput_color\]"
+ tput_reset="\[$tput_reset\]"
+ fi
+ PS1="${tput_color}["\$\(date\ +%Y-%m-%d/%H:%M:%S/%Z\)" $USER@$(hostname):"\$\(pwd\)"]$ $tput_reset"
+ PS2="${tput_color}> $tput_reset"
+ PS3="${tput_color}select: $tput_reset"
+ PS4="${tput_color}+ $tput_reset"
+
+ # Add local additions.
+ local_shinit_file=~/.shinit_add
+ if [ -f $local_shinit_file ]; then
+ . $local_shinit_file
+ fi
+
+fi
--- /dev/null
+" Activate syntax highlighting.
+syntax on
+filetype plugin on
+
+" Number lines.
+set number
+
+" Don't add unsolicited final newline.
+set binary
+
+" Indentation rules (tabs to 4 spaces).
+set expandtab
+set shiftwidth=2
+set softtabstop=2
+
+" Backups.
+set backup
+set backupdir=~/.vimbackups
+let myvar = strftime("%Y-%m-%d_%H-%M-%S")
+let myvar = "set backupext=_". myvar
+execute myvar
+
+" Keep syntax highlighting healthy.
+autocmd BufEnter * :syntax sync fromstart
+
+" Mark the 80-th column.
+set colorcolumn=80
+
+" Source additions
+source ~/.vimrc_add
+++ /dev/null
-# Initialization for login shells.
-
-# Tell interactive shells to look in ~/.shinit for setup.
-ENV=$HOME/.shinit
-export ENV
-. $ENV
+++ /dev/null
-# Settings for interactive shells.
-
-# Ensure shell truly is interactive to avoid confusing non-interactive shells.
-if [[ $- == *i* ]]; then
-
- # Fancy colors for ls.
- alias ls="ls --color=auto"
-
- # Use vim as default editor for anything.
- export VISUAL=vim
- export EDITOR=$VISUAL
-
- # Colored prompt with username, hostname, date/time, directory.
- colornumber=7 # Default to white if no color set via colornumber dotfile.
- colornumber_file=~/.shinit_color
- if [ -f $colornumber_file ]; then
- colornumber=`cat $colornumber_file`
- fi
- tput_color="$(tput setaf $colornumber)$(tput bold)"
- tput_reset="$(tput sgr0)"
- # Bash confuses the line length when not told to not count escape sequences.
- if [ ! "$BASH" = "" ]; then
- tput_color="\[$tput_color\]"
- tput_reset="\[$tput_reset\]"
- fi
- PS1="${tput_color}["\$\(date\ +%Y-%m-%d/%H:%M:%S/%Z\)" $USER@$(hostname):"\$\(pwd\)"]$ $tput_reset"
- PS2="${tput_color}> $tput_reset"
- PS3="${tput_color}select: $tput_reset"
- PS4="${tput_color}+ $tput_reset"
-
- # Add local additions.
- local_shinit_file=~/.shinit_add
- if [ -f $local_shinit_file ]; then
- . $local_shinit_file
- fi
-
-fi
+++ /dev/null
-" Activate syntax highlighting.
-syntax on
-filetype plugin on
-
-" Number lines.
-set number
-
-" Don't add unsolicited final newline.
-set binary
-
-" Indentation rules (tabs to 4 spaces).
-set expandtab
-set shiftwidth=2
-set softtabstop=2
-
-" Backups.
-set backup
-set backupdir=~/.vimbackups
-let myvar = strftime("%Y-%m-%d_%H-%M-%S")
-let myvar = "set backupext=_". myvar
-execute myvar
-
-" Keep syntax highlighting healthy.
-autocmd BufEnter * :syntax sync fromstart
-
-" Mark the 80-th column.
-set colorcolumn=80
-
-" Source additions
-source ~/.vimrc_add
--- /dev/null
+ansible-playbook -i 'localhost,' -c local user.yml
--- /dev/null
+- hosts: all
+ tasks:
+
+ - name: ensure ~/.vimbackups directory
+ file: state=directory dest=~/.vimbackups
+ - name: Ensure dotfile symlinks
+ file: state=link force=yes src={{item}} dest=~/.{{item|basename}}
+ with_fileglob: ~/config/ansible/files/dotfiles/minimal/*
+ - name: Ensure user dotfile symlinks
+ file: state=link force=yes src={{item}} dest=~/.{{item|basename}}
+ with_fileglob: ~/config/ansible/files/dotfiles/user/*