]> git.immae.eu Git - perso/Immae/Config/Ansible.git/blame - roles/contexts/fretlink/tasks/main.yml
Add nix syntax highlight to vim
[perso/Immae/Config/Ansible.git] / roles / contexts / fretlink / tasks / main.yml
CommitLineData
397c4fed
IB
1---
2- name: Import roles
3 include_role:
e1c588d3 4 name: "{{ fretlink_import_item }}"
397c4fed
IB
5 loop:
6 - programming/python
7 - programming/haskell
8 - programming/nodejs
e1c588d3
IB
9 loop_control:
10 loop_var: fretlink_import_item
587b6dd6
IB
11- name: Config dirs
12 file:
13 state: directory
14 path: "$XDG_CONFIG_HOME/{{ item }}"
15 loop:
16 - autostart
17 - Zeal
18 - pm2
397c4fed 19- name: Config files
eac82f28
IB
20 copy:
21 src: "config_files/{{ item }}"
22 dest: "$XDG_CONFIG_HOME/{{ item }}"
23 loop:
587b6dd6 24 - autostart/zeal.desktop
3dd3d428
IB
25- name: zeal configuration
26 ini_file:
27 path: "$XDG_CONFIG_HOME/Zeal/Zeal.conf"
28 section: "{{ item.0 }}"
29 option: "{{ item.1 }}"
30 value: "{{ item.2 }}"
31 no_extra_spaces: true
32 loop:
33 - [ "General", "check_for_update", "true" ]
34 - [ "General", "hide_on_close", "true" ]
35 - [ "General", "minimize_to_systray", "true" ]
36 - [ "General", "show_systray_icon", "true" ]
37 - [ "General", "start_minimized", "true" ]
38 - [ "docsets", "path", "{{ lookup('env', 'XDG_DATA_HOME') }}/Zeal/Zeal/docsets" ]
39 - [ "search", "fuzzy_search_enabled", "false" ]
40 - [ "tabs", "open_new_tab_after_active", "false" ]
2f756cbb
IB
41- name: Zeal docsets
42 block:
43 - name: Check missing Zeal docsets
44 register: zeal_missing_docsets
45 shell: "for i in {{ zeal_roles | join(' ') }}; do [ -d $XDG_DATA_HOME/Zeal/Zeal/docsets/$i.docset ] || echo $i; done"
46 changed_when: zeal_missing_docsets.stdout != ""
47 check_mode: no
48 - name: Ask for Zeal docsets
49 when: zeal_missing_docsets.stdout != ""
50 pause:
51 prompt: "install Zeal docsets ? [y/N]"
52 register: zeal_install_docsets
53 check_mode: no
54 - name: Zeal docsets
55 when: zeal_missing_docsets.stdout != "" and zeal_install_docsets.user_input.startswith("y")
56 shell: "dasht-docsets-install {{ item }}"
57 args:
58 creates: "$XDG_DATA_HOME/Zeal/Zeal/docsets/{{ item }}.docset"
59 loop: "{{ zeal_missing_docsets.stdout.split('\n') }}"
cf86d448
IB
60- name: workdir
61 block:
587b6dd6
IB
62 - name: Workdir
63 file:
64 state: directory
65 path: $HOME/workdir
cf86d448 66 - name: workdir scripts
eac82f28 67 copy:
cf86d448 68 mode: 0755
eac82f28
IB
69 src: "workdir/{{ item }}"
70 dest: "$HOME/workdir/{{ item }}"
71 loop:
72 - start
cf86d448
IB
73 - name: environment variables file
74 block:
b7b8fe64
IB
75 - name: environment file
76 template:
77 src: environment.j2
cf86d448 78 dest: $HOME/workdir/environment
e7e024a9
IB
79 rescue:
80 - debug:
81 msg: "Could not read password store, continuing"
397c4fed
IB
82- name: enable remind service
83 systemd:
84 state: started
85 scope: user
86 name: remind@work.service
87 enabled: true
9f528ac4
IB
88- name: scripts
89 block:
90 - name: completion directory
91 file:
92 state: directory
93 path: $XDG_DATA_HOME/bash_completion
94 - name: scripts
95 copy:
96 mode: 0755
97 src: "scripts/{{ item }}"
98 dest: "$HOME/.local/bin/{{ item }}"
99 loop:
100 - fl_tmux_dev
101 - fl_vpn
102 - fl_getDump
103 - name: completion scripts
104 copy:
105 src: "scripts/_{{ item }}"
106 dest: "$XDG_DATA_HOME/bash_completion/_{{ item }}"
107 loop:
108 - fl_tmux_dev
501e9127
IB
109- name: docker images
110 block:
111 - name: check missing docker images
112 register: docker_missing_images
113 shell: '[ -n "$(docker image ls -q {{ item.0 }}:{{ item.1 }})" ] || echo "missing"'
114 loop: "{{ docker_images }}"
115 check_mode: no
116 changed_when: docker_missing_images.stdout != ""
117 - name: Ask for Docker images
118 when: docker_missing_images.changed
119 pause:
120 prompt: "install Fretlink Docker images ? [y/N]"
121 register: docker_install_images
122 check_mode: no
123 - name: install custom docker images
124 when: item.2 is not none and docker_missing_images.changed and docker_install_images.user_input.startswith("y")
125 docker_image:
126 path: "./roles/contexts/fretlink/files/docker/{{ item.2 }}"
127 tag: "{{ item.1 }}"
128 name: "{{ item.0 }}"
129 loop: "{{ docker_images }}"
130 - name: install repository docker images
131 when: item.2 is none and docker_missing_images.changed and docker_install_images.user_input.startswith("y")
132 docker_image:
133 tag: "{{ item.1 }}"
134 name: "{{ item.0 }}"
135 loop: "{{ docker_images }}"