From f270a5b31cd8289aeaf41720b601c2fbdf71a6da Mon Sep 17 00:00:00 2001
From: Nikolaos Boutalas <nikolaos@boutalas.me>
Date: Mon, 7 Aug 2023 11:48:39 +0300
Subject: Add zsh task

---
 tasks/zsh.yml | 47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 tasks/zsh.yml

(limited to 'tasks/zsh.yml')

diff --git a/tasks/zsh.yml b/tasks/zsh.yml
new file mode 100644
index 0000000..e0a1251
--- /dev/null
+++ b/tasks/zsh.yml
@@ -0,0 +1,47 @@
+- name: Change default shell
+  become: true
+  shell: "chsh -s $(which zsh) {{ ansible_user_id }}"
+  tags:
+    - zsh
+  
+- name: Create .zshenv
+  shell: "echo \"ZDOTDIR=~/.config/zsh\" > ~/.zshenv"
+  tags:
+    - zsh
+
+- name: Install Oh My Zsh
+  shell: zsh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
+  tags:
+    - zsh
+
+- name: Install zsh-autosuggestions plugin
+  git:
+    repo: 'https://github.com/zsh-users/zsh-autosuggestions.git'
+    dest: "~/.config/zsh/ohmyzsh/plugins/zsh-autosuggestions"
+  tags:
+    - zsh
+
+- name: Install zsh-syntax-highlighting plugin
+  git:
+    repo: 'https://github.com/zsh-users/zsh-syntax-highlighting.git'
+    dest: "~/.config/zsh/ohmyzsh/plugins/zsh-syntax-highlighting"
+  tags:
+    - zsh
+
+- name: Enable ZSH plugins
+  lineinfile:
+    path: "~/.config/zsh/.zshrc"
+    regexp: '^plugins='
+    line: plugins=(git tmux zsh-autosuggestions zsh-syntax-highlighting)
+  tags:
+    - zsh
+
+- name: Enable tmux autostart
+  lineinfile:
+    path: "~/.config/zsh/.zshrc"
+    line: |
+      if [[ -z $TMUX ]]; then
+        tmux -u attach || exec tmux -u new-session && exit
+      fi
+  tags:
+    - zsh
-- 
cgit v1.2.3