diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1377554 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.swp diff --git a/.vimrc b/.vimrc deleted file mode 100644 index 12a7194..0000000 --- a/.vimrc +++ /dev/null @@ -1,27 +0,0 @@ -set nocompatible " get rid of Vi compatibility mode. SET FIRST! -execute pathogen#infect('bundle/{}') -filetype plugin indent on " filetype detection[ON] plugin[ON] indent[ON] -set t_Co=256 " enable 256-color mode. -syntax enable " enable syntax highlighting (previously syntax on). -colorscheme desert " set colorscheme -set number " show line numbers -set laststatus=2 " last window always has a statusline -filetype indent on " activates indenting for files -set nohlsearch " Don't continue to highlight searched phrases. -set incsearch " But do highlight as you type your search. -set ignorecase " Make searches case-insensitive. -set ruler " Always show info along bottom. -set autoindent " auto-indent -set tabstop=4 " tab spacing -set softtabstop=4 " unify -set shiftwidth=4 " indent/outdent by 4 columns -set shiftround " always indent/outdent to the nearest tabstop -set expandtab " use spaces instead of tabs -set smarttab " use tabs at the start of a line, spaces elsewhere -set nowrap " don't wrap text - -" swap, backup and undo directories -" make with: mkdir -p ~/.vim/{backup_files,swap_files,undo_files} -set backupdir=~/.vim/backup_files// -set directory=~/.vim/swap_files// -set undodir=~/.vim/undo_files// diff --git a/install.sh b/install.sh index 308e51b..a80e8c1 100644 --- a/install.sh +++ b/install.sh @@ -6,14 +6,14 @@ EXTRA_DIR="$HOME/.extra" # Update dotfiles itself first -[ -d "$DOTFILES_DIR/.git" ] && git --work-tree="$DOTFILES_DIR" --git-dir="$DOTFILES_DIR/.git" pull origin master +#[ -d "$DOTFILES_DIR/.git" ] && git --work-tree="$DOTFILES_DIR" --git-dir="$DOTFILES_DIR/.git" pull origin master #vim backup folders mkdir -p ~/.vim/{backup_files,swap_files,undo_files} # Bunch of symlinks -ln -sfv "$DOTFILES_DIR/run/.bash_profile" ~ -ln -sfv "$DOTFILES_DIR/run/.bash_profile" ~/.bashrc +#ln -sfv "$DOTFILES_DIR/run/.bash_profile" ~ +ln -sfv "$DOTFILES_DIR/run/.bashrc" ~ ln -sfv "$DOTFILES_DIR/git/.gitconfig" ~ ln -sfv "$DOTFILES_DIR/system/.vimrc" ~ diff --git a/run/.bash_profile.swp b/run/.bash_profile.swp new file mode 100644 index 0000000..6b6dad6 Binary files /dev/null and b/run/.bash_profile.swp differ diff --git a/run/.bashrc b/run/.bashrc new file mode 100644 index 0000000..6b735c9 --- /dev/null +++ b/run/.bashrc @@ -0,0 +1,152 @@ +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return;; +esac + +# Resolve DOTFILES_DIR (assuming ~/.dotfiles on distros without readlink and/or $BASH_SOURCE/$0) +READLINK=$(which greadlink || which readlink) +CURRENT_SCRIPT=$BASH_SOURCE + +if [[ -n $CURRENT_SCRIPT && -x "$READLINK" ]]; then + SCRIPT_PATH=$($READLINK -f "$CURRENT_SCRIPT") + DOTFILES_DIR=$(dirname "$(dirname "$SCRIPT_PATH")") +elif [ -d "$HOME/.dotfiles" ]; then + DOTFILES_DIR="$HOME/.dotfiles" +else + echo "Unable to find dotfiles, exiting." + return # `exit 1` would quit the shell itself +fi + +# Finally we can source the dotfiles (order matters) + +for DOTFILE in "$DOTFILES_DIR"/system/.{function,env,alias,prompt}; do + [ -f "$DOTFILE" ] && . "$DOTFILE" +done + +# Set LSCOLORS + +eval "$(dircolors "$DOTFILES_DIR"/system/.dir_colors)" + +# Hook for extra/custom stuff + +EXTRA_DIR="$HOME/.extra" + +if [ -d "$EXTRA_DIR" ]; then + for EXTRAFILE in "$EXTRA_DIR"/run/*.sh; do + [ -f "$EXTRAFILE" ] && . "$EXTRAFILE" + done +fi + +# Clean up + +unset READLINK CURRENT_SCRIPT SCRIPT_PATH DOTFILE + +# Export + +export DOTFILES_DIR EXTRA_DIR + + +# don't put duplicate lines or lines starting with space in the history. +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# make less more friendly for non-text input files, see lesspipe(1) +[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color|*-256color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +#force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# some more ls aliases +alias ll='ls -alF' +alias la='ls -A' +alias l='ls -CF' + +# Add an "alert" alias for long running commands. Use like so: +# sleep 10; alert +alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' + +# Aliases +if [ -f ~/.alias ]; then + . ~/.alias +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if ! shopt -oq posix; then + if [ -f /usr/share/bash-completion/bash_completion ]; then + . /usr/share/bash-completion/bash_completion + elif [ -f /etc/bash_completion ]; then + . /etc/bash_completion + fi +fi + + +if [ -f `which powerline-daemon` ]; then + powerline-daemon -q + POWERLINE_BASH_CONTINUATION=1 + POWERLINE_BASH_SELECT=1 + . /usr/share/powerline/bindings/bash/powerline.sh +fi diff --git a/system/.alias b/system/.alias index 997b553..a7bf24c 100644 --- a/system/.alias +++ b/system/.alias @@ -10,3 +10,8 @@ alias vp='vagrant provision' alias vssh='vagrant ssh' alias vd='vagrant destroy' alias vc='vagrant destroy && vagrant up --provision' + +### Lyrical +alias vpn_lyrical='cd /home/ahosking/lyrical/vpn &&sudo openvpn --config gw-udp-1194-ahosking-vpn.ovpn' + +alias roles_fetch='r10k puppetfile install --puppetfile Puppetfile --moduledir ../../roles/' diff --git a/system/.env b/system/.env index 6eb2bfe..bfcea27 100644 --- a/system/.env +++ b/system/.env @@ -1,6 +1,6 @@ #!/usr/bin/env bash -export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$DOTFILES_DIR/bin:$HOME/apps" +export PATH="$PATH:$HOME:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$DOTFILES_DIR/bin:$HOME/apps" # Make vim the default editor. export EDITOR='vim'; diff --git a/system/.vimrc b/system/.vimrc index 29ee774..2a0b4e6 100644 --- a/system/.vimrc +++ b/system/.vimrc @@ -1,7 +1,8 @@ -execute pathogen#infect('bundle/{}') -filetype plugin indent on " filetype detection[ON] plugin[ON] indent[ON] set nocompatible " get rid of Vi compatibility mode. SET FIRST! +"execute pathogen#infect('bundle/{}') +filetype plugin indent on " filetype detection[ON] plugin[ON] indent[ON] set t_Co=256 " enable 256-color mode. +syntax enable " enable syntax highlighting (previously syntax on). colorscheme desert " set colorscheme set number " show line numbers set laststatus=2 " last window always has a statusline @@ -17,11 +18,12 @@ set shiftwidth=4 " indent/outdent by 4 columns set shiftround " always indent/outdent to the nearest tabstop set expandtab " use spaces instead of tabs set smarttab " use tabs at the start of a line, spaces elsewhere -set nowrap " don't wrap text -set autoread "Reload files changed outside vim -syntax on +set wrap " wrap text +set linebreak +set nolist " list disables linbreak " swap, backup and undo directories +" make with: mkdir -p ~/.vim/{backup_files,swap_files,undo_files} set backupdir=~/.vim/backup_files// set directory=~/.vim/swap_files// set undodir=~/.vim/undo_files//