--- # Common/Usersettings: Universial Dotfiles. Update regularly. - name: Usersettings - Install required tools become: true ignore_errors: true # just fail on systems without sudo access ansible.builtin.package: name: "{{ packages }}" state: present vars: packages: - git diff: false - name: Usersettings - Install/ Update oh-my-zsh for current user ansible.builtin.git: repo: https://github.com/robbyrussell/oh-my-zsh.git dest: "{{ ansible_user_dir }}/.oh-my-zsh" diff: false - name: Usersettings - Install/ Update fzf sources ansible.builtin.git: repo: https://github.com/junegunn/fzf.git dest: "{{ ansible_user_dir }}/.fzf" register: fzf_git diff: false - name: (Re-)Install fzf when: - fzf_git.after != fzf_git.before ansible.builtin.shell: ".fzf/install --key-bindings --no-completion --no-update-rc" - name: Usersettings - Install pip virtualenvwrapper when: usersetup_virtualenvwrapper diff: false block: - name: Usersettings - Install pip3 when: (override_os_family is defined) | ternary(override_os_family,ansible_os_family) != "Darwin" and (override_os_family is defined) | ternary(override_os_family,ansible_os_family) != "FreeBSD" become: true ignore_errors: true # just fail on systems without sudo access ansible.builtin.package: name: "{{ packages }}" state: present vars: packages: - python3-pip diff: false - name: Usersettings - Install pip virtualenvwrapper (Debian) when: (override_os_family is defined) | ternary(override_os_family,ansible_os_family) == "Debian" become: true ansible.builtin.pip: name: virtualenvwrapper extra_args: --system - name: Usersettings - Install pip virtualenvwrapper (macOS) when: (override_os_family is defined) | ternary(override_os_family,ansible_os_family) == "Darwin" environment: PATH: "/usr/local/bin:{{ ansible_env.PATH }}" ansible.builtin.pip: name: virtualenvwrapper - name: Usersettings - Install pip virtualenvwrapper (CentOS, ArchLinux) when: (override_os_family is defined) | ternary(override_os_family,ansible_os_family) == "Centos" or (override_os_family is defined) | ternary(override_os_family,ansible_os_family) == "Archlinux" become: true ansible.builtin.pip: name: virtualenvwrapper - name: Usersettings - Copy dotfiles ansible.builtin.copy: src: "{{ item.src }}" dest: "{{ item.dest }}" with_items: - { src: "{{ role_path }}/files/_gitignore_global", dest: "{{ ansible_user_dir }}/.gitignore_global", } - { src: "{{ role_path }}/files/_config/mpv.conf", dest: "{{ ansible_user_dir }}/.config/mpv/", } - { src: "{{ role_path }}/files/_oh-my-zsh/jtbx.zsh-theme", dest: "{{ ansible_user_dir }}/.oh-my-zsh/custom/themes/jtbx.zsh-theme", } - name: Usersettings - Create some directories ansible.builtin.file: path: "{{ item }}" state: directory with_items: - "{{ ansible_user_dir }}/.config/htop/" - name: Usersettings - Set templated dotfiles ansible.builtin.template: src: "{{ item.src }}" dest: "{{ item.dest }}" force: "{{ item.force }}" ignore_errors: true with_items: - { src: "{{ role_path }}/templates/_zshrc.j2", dest: "{{ ansible_user_dir }}/.zshrc", force: true, } - { src: "{{ role_path }}/templates/_tmux.conf.j2", dest: "{{ ansible_user_dir }}/.tmux.conf", force: true, } - { src: "{{ role_path }}/templates/_vimrc.j2", dest: "{{ ansible_user_dir }}/.vimrc", force: true, } - { src: "{{ role_path }}/templates/htoprc.j2", dest: "{{ ansible_user_dir }}/.config/htop/htoprc", force: false, } - name: Usersettings - Set global gitconfig when: usersetup_gitconfig == true ansible.builtin.template: src: "{{ role_path }}/templates/_gitconfig.j2" dest: "{{ ansible_user_dir }}/.gitconfig" - name: Usersettings - Vim Plugings when: usersetup_vimplugins == true block: - name: Usersettings - Create .vim directory ansible.builtin.file: path: "{{ ansible_user_dir }}/.vim/autoload" state: directory - name: Usersettings - Install vim plugin manager ansible.builtin.get_url: url: https://tpo.pe/pathogen.vim dest: "{{ ansible_user_dir }}/.vim/autoload/pathogen.vim" - name: Usersettings - Install vim plugins ansible.builtin.git: repo: "{{ item.repo }}" dest: "{{ item.dest }}" diff: false with_items: - { repo: "https://github.com/itchyny/lightline.vim", dest: "{{ ansible_user_dir }}/.vim/bundle/lightline", } - { repo: "https://github.com/w0rp/ale", dest: "{{ ansible_user_dir }}/.vim/bundle/ale", } - { repo: "https://github.com/airblade/vim-gitgutter", dest: "{{ ansible_user_dir }}/.vim/bundle/vim-gitgutter", } - { repo: "https://github.com/sheerun/vim-polyglot", dest: "{{ ansible_user_dir }}/.vim/bundle/vim-polyglot", } - { repo: "https://github.com/tpope/vim-commentary", dest: "{{ ansible_user_dir }}/.vim/bundle/vim-commentary", } # TODO: https://github.com/jan-warchol/selenized