--- - name: Stat Atuin installation ansible.builtin.stat: path: "{{ user_home }}/.atuin/bin/atuin" become: false register: atuin_installed_result - name: Create Atuin bin directory ansible.builtin.file: path: "{{ user_home }}/.atuin/bin" state: directory owner: "{{ user_name }}" group: "{{ user_name }}" mode: "0755" become: false when: not atuin_installed_result.stat.exists - name: Download Atuin installer script ansible.builtin.get_url: url: https://setup.atuin.sh dest: /tmp/atuin-install.sh mode: "0755" timeout: 300 become: false when: not atuin_installed_result.stat.exists - name: Run Atuin installer (non-interactive) ansible.builtin.shell: | sh /tmp/atuin-install.sh --non-interactive --bin-dir "{{ user_home }}/.atuin/bin" args: executable: /bin/bash environment: HOME: "{{ user_home }}" become: false when: not atuin_installed_result.stat.exists - name: Remove Atuin installer script ansible.builtin.file: path: /tmp/atuin-install.sh state: absent become: false when: not atuin_installed_result.stat.exists - name: Verify Atuin version ansible.builtin.command: "{{ user_home }}/.atuin/bin/atuin --version" become: false changed_when: false