Skip to content

Ansible role for setting up oh-my-zsh with powerline10k theme

Notifications You must be signed in to change notification settings

brentgl/zsh-p10k

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ansible Role: brentgl.oh-my-zsh

An Ansible role that installs and configures oh-my-zsh with powerlevel10k theme for specified users. You can provide your own .zshrc and .p10k.zsh files or use the provided ones.

Role Variables

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

# default theme
oh_my_zsh_theme: powerlevel10k

# default plugins
oh_my_zsh_plugins:
    - git
    - zsh-autosuggestions
    - zsh-syntax-highlighting

# default .zshrc template; points to the default template delivered with this role
zshrc_src_template: .zshrc.j2

# default .p10k.zsh file; points to the default file delivered with this role
p10k_src_file: .p10k.zsh

Dependencies

None, only builtin modules are being used.

Example Playbook

The following playbook configures oh-my-zsh with powerlevel10k theme for testuser1 and testuser2:

- hosts: all
  roles:
    - role: tomereli.oh_my_zsh_p10k
      vars:
        users:
            - username: testuser1
            - username: testuser2

If you want to provide your own template for the .zshrc file, you can set the zshrc_src_template variable so it points to your custom template, e.g. stored under templates/custom.zshrc.j2 in your repo directory.
You can also provide your own version of the .p10k.zsh by setting the p10k_src_file variable and store your custom template at for example files/custom.p10k.zsh.

- hosts: all
  roles:
    - role: tomereli.oh_my_zsh_p10k
      vars:
        users:
            - username: testuser1
        zshrc_src_template: custom.zshrc.j2
        p10k_src_file: custom.p10k.zsh

.zshrc Notes:

  • Do not use .zshrc.j2 as your custom template filename as it will just pick the default template instead.
  • If you do not wish to use the template function, you can also just provide your .zshrc without the Jinja2 syntax and file-ending

p10k.zsh Notes:

  • The recommended approach is to generate your own file by running p10k configure on a system which already has oh-my-zsh with powerlevel10k installed, then copy the generated file (found at ~/.p10k.zsh) into your project directory.
  • Do not use .p10k.zsh as your custom filename as it will just pick the default template instead.
  • Contrarily to the .zshrc.j2 template, the custom .p10k.zsh will be copied without further modification, i.e. Jinja2 syntax is not supported in this file.

About

Ansible role for setting up oh-my-zsh with powerline10k theme

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 95.5%
  • Jinja 4.5%