Files

159 lines
4.5 KiB
YAML

---
- name: Configure shell for default user
tags: shell
become: true
become_user: "{{ default_user }}"
block:
- name: Get default user home
getent:
database: passwd
key: "{{ default_user }}"
split: ":"
when: target_system == "linux"
- name: Set default user home
set_fact:
default_user_home: "{{ getent_passwd[default_user][4] }}"
when: target_system == "linux"
- name: Install and configure default user environment
become: true
become_user: "{{ default_user }}"
block:
- name: Install .tmux.conf to default user
copy:
src: .tmux.conf
dest: "{{ default_user_home }}/.tmux.conf"
owner: "{{ default_user }}"
group: "{{ default_user_group }}"
force: yes
mode: 0644
- name: Create temporary install directory
tempfile:
path: "{{ default_user_home }}"
state: directory
suffix: .tmp
register: temp_install_dir
changed_when: false
- name: Download oh-my-zsh
get_url:
url: https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh
dest: "{{ temp_install_dir.path }}"
mode: 0777
- name: Install oh-my-zsh
shell: "sh {{ temp_install_dir.path }}/install.sh --unattended"
args:
creates: "{{ default_user_home }}/.oh-my-zsh"
- name: Install powerlevel10k theme
git:
repo: "https://gitee.com/romkatv/powerlevel10k.git"
version: master
dest: "{{ default_user_home }}/.oh-my-zsh/custom/themes/powerlevel10k"
depth: 1
- name: Install zsh-syntax-highlighting
git:
repo: "https://github.com/zsh-users/zsh-syntax-highlighting.git"
version: master
dest: "{{ default_user_home }}/.zsh/zsh-syntax-highlighting"
clone: yes
update: yes
- name: Install zsh-autosuggestions
git:
repo: https://github.com/zsh-users/zsh-autosuggestions
version: master
dest: "{{ default_user_home }}/.zsh/zsh-autosuggestions"
clone: yes
update: yes
- name: Install .zshrc to default user
template:
src: .zshrc.j2
dest: "{{ default_user_home }}/.zshrc"
owner: "{{ default_user }}"
group: "{{ default_user_group }}"
force: yes
mode: 0644
- name: Install .p10k.zsh to default user
copy:
src: .p10k.zsh
dest: "{{ default_user_home }}/.p10k.zsh"
owner: "{{ default_user }}"
group: "{{ default_user_group }}"
force: yes
mode: 0644
- name: Configure shell for root user
tags: shell
become: true
block:
- name: Get root home
user:
name: root
state: present
shell: /bin/zsh
register: root_user_details
- name: Set root home
set_fact:
root_user_home: "{{ root_user_details.home }}"
- name: Print root user home
debug:
var: root_user_home
- name: Install .tmux.conf to root user
copy:
src: .tmux.conf
dest: "{{ root_user_home }}/.tmux.conf"
force: yes
mode: 0644
- name: Create temporary root install directory
tempfile:
path: "{{ root_user_home }}"
state: directory
suffix: .tmp
register: temp_install_dir_root
changed_when: false
- name: Download oh-my-zsh
get_url:
url: https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh
dest: "{{ temp_install_dir_root.path }}"
mode: 0777
- name: Install oh-my-zsh
shell: "sh {{ temp_install_dir_root.path }}/install.sh --unattended"
args:
creates: "{{ root_user_home }}/.oh-my-zsh"
- name: Install zsh-syntax-highlighting
git:
repo: "https://github.com/zsh-users/zsh-syntax-highlighting.git"
version: master
dest: "{{ root_user_home }}/.zsh/zsh-syntax-highlighting"
clone: yes
update: yes
- name: Install zsh-autosuggestions
git:
repo: https://github.com/zsh-users/zsh-autosuggestions
version: master
dest: "{{ root_user_home }}/.zsh/zsh-autosuggestions"
clone: yes
update: yes
- name: Install .zshrc to root user
template:
src: .zshrc.root.j2
dest: "{{ root_user_home }}/.zshrc"
force: yes
mode: 0644