Giter Club home page Giter Club logo

ansible-role-oh-my-zsh's Introduction

Build Status Ansible Role Ansible Role Ansible Role License

ansible-role-oh-my-zsh

Ansible role for installating and configuring zsh and oh-my-zsh

Requirements

Only test with ansible 2.5 min version

Role Variables

Available variables are listed below, along with default values (see defaults/main.yml):

Customize theme

# Default theme to load (included with oh-my-zsh)
# All included theme here : https://github.com/robbyrussell/oh-my-zsh/tree/master/themes
oh_my_zsh_default_theme: robbyrussell

# For a custom theme not present in $HOME/.oh-my-zsh/themes or in $HOME/.oh-my-zsh/custom/themes/ :
# 1. Fill oh_my_zsh_custom_theme_info
#    - This theme will be checkout into directory $HOME/.oh-my-zsh/custom/custom-themes/
# oh_my_zsh_custom_theme_info: { url: "oh_my_zsh_custom_theme_git_url", dir_dest_name: "oh_my_zsh_custom_git_dir_name" }
# example :
oh_my_zsh_custom_theme_info: { url: "https://github.com/ptavares/zsh-themes.git", dir_dest_name: zsh-themes }

# 2. Choose the custom zsh theme name to load
#    - A symlink will be created from $HOME/.oh-my-zsh/custom/custom-themes/oh_my_zsh_custom_theme_git_dir_name/oh_my_zsh_custom_theme_name to $HOME/.oh-my-zsh/custom/themes/
# oh_my_zsh_custom_theme: oh_my_zsh_custom_theme_name
# example :
oh_my_zsh_custom_theme: ptavares

# 3. Add extra theme configuration
# oh_my_zsh_custom_theme_config:
#  - MY_CUSTOM_THEME_VAR1=value
#  - MY_CUSTOM_THEME_VAR2=value2

Customize plugins

# Default plugins to load (included with oh-my-zsh installation)
# All included plugins here : https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins
oh_my_zsh_default_plugins:
  - git

# For custom plugins not present in $HOME/.oh-my-zsh/plugins or in $HOME/.oh-my-zsh/custom/plugins/ :
# 1. Fill oh_my_zsh_custom_plugins_info
#    - Plugins will be checkout into directory $HOME/.oh-my-zsh/custom/custom-plugins/
#    - A symlink will be created from $HOME/.oh-my-zsh/custom/custom-plugins/oh_my_zsh_custom_plugin_dir_name to $HOME/.oh-my-zsh/custom/plugins/
# oh_my_zsh_custom_plugins_info: { url: "oh_my_zsh_custom_plugin_git_url", dir_dest_name: "oh_my_zsh_custom_plugin_git_dir_name" }
# example :
oh_my_zsh_custom_plugins_info:
  - { url: "https://github.com/junegunn/fzf.git", dir_dest_name : fzf }
  - { url: "https://github.com/Treri/fzf-zsh.git", dir_dest_name: fzf-zsh }
  - { url: "https://github.com/zsh-users/zsh-autosuggestions.git", dir_dest_name: zsh-autosuggestions }
  - { url: "https://github.com/zdharma/fast-syntax-highlighting.git", dir_dest_name: fast-syntax-highlighting }
  - { url: "https://github.com/chrissicool/zsh-bash.git", dir_dest_name: zsh-bash }

# 2. List all your custom plugins to load on startup zsh
# oh_my_zsh_custom_plugins:
#	 - oh_my_zsh_custom_plugin_1
#  - oh_my_zsh_custom_plugin_2
# example :
oh_my_zsh_custom_plugins:
  - fzf-zsh
  - zsh-autosuggestions
  - fast-syntax-highlighting
  - zsh-bash

# 3. Extra plugin command
# Some plugins need extra command to run successfully
# oh_my_zsh_custom_plugins_command :
#	 - "oh_my_zsh_custom_plugins_command_1"
#  - "oh_my_zsh_custom_plugins_command_2"
# exemple :
oh_my_zsh_custom_plugins_command :
  - "$HOME/.oh-my-zsh/custom/plugins/fzf/install --all"
  - "fast-theme safari"

Customize .zhrc with your owns entries

# Add here all entries you need to put in zhrc file, like alias for example
# oh_my_zsh_custom_zsh_entries:
#	 - "oh_my_zsh_custom_zsh_entries_1"
#	 - "oh_my_zsh_custom_zsh_entries_2"
# example:
oh_my_zsh_custom_zsh_entries:
  - "# List only directories alias"
  - "alias lsd='ls -l | grep \"^d\"'"

Dependencies

No dependencie

Example Playbook

- hosts: all
  roles:
    - role: ptavares.ansible_role_oh_my_zsh

Inside vars/main.yml:

  • Copy content of defaults/main.yml in your playbook's vars file.
  • Customize it as you like (filling role's variables)

License

MIT

ansible-role-oh-my-zsh's People

Contributors

ptavares avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.