---
- name: Import roles
include_role:
- name: "{{ item }}"
+ name: "{{ fretlink_import_item }}"
loop:
- programming/python
- programming/haskell
- programming/nodejs
+ loop_control:
+ loop_var: fretlink_import_item
+- name: Config dirs
+ file:
+ state: directory
+ path: "$XDG_CONFIG_HOME/{{ item }}"
+ loop:
+ - autostart
+ - Zeal
+ - pm2
- name: Config files
copy:
src: "config_files/{{ item }}"
dest: "$XDG_CONFIG_HOME/{{ item }}"
loop:
- - "autostart/zeal.desktop"
+ - autostart/zeal.desktop
- name: zeal configuration
ini_file:
path: "$XDG_CONFIG_HOME/Zeal/Zeal.conf"
- [ "docsets", "path", "{{ lookup('env', 'XDG_DATA_HOME') }}/Zeal/Zeal/docsets" ]
- [ "search", "fuzzy_search_enabled", "false" ]
- [ "tabs", "open_new_tab_after_active", "false" ]
-- name: Create pm2 config dir
- file:
- path: $XDG_CONFIG_HOME/pm2
- state: directory
+- name: Zeal docsets
+ block:
+ - name: Check missing Zeal docsets
+ register: zeal_missing_docsets
+ shell: "for i in {{ zeal_roles | join(' ') }}; do [ -d $XDG_DATA_HOME/Zeal/Zeal/docsets/$i.docset ] || echo $i; done"
+ changed_when: zeal_missing_docsets.stdout != ""
+ check_mode: no
+ - name: Ask for Zeal docsets
+ when: zeal_missing_docsets.stdout != ""
+ pause:
+ prompt: "install Zeal docsets ? [y/N]"
+ register: zeal_install_docsets
+ check_mode: no
+ - name: Zeal docsets
+ when: zeal_missing_docsets.stdout != "" and zeal_install_docsets.user_input.startswith("y")
+ shell: "dasht-docsets-install {{ item }}"
+ args:
+ creates: "$XDG_DATA_HOME/Zeal/Zeal/docsets/{{ item }}.docset"
+ loop: "{{ zeal_missing_docsets.stdout.split('\n') }}"
- name: workdir
block:
+ - name: Workdir
+ file:
+ state: directory
+ path: $HOME/workdir
- name: workdir scripts
copy:
mode: 0755
copy:
dest: $HOME/workdir/environment
content: "{{ fretlink_environment.stdout }}"
+ rescue:
+ - debug:
+ msg: "Could not read password store, continuing"
- name: enable remind service
systemd:
state: started