- name: Installing nodejs & curl (for bun) become: true ansible.builtin.dnf5: name: - nodejs - curl state: latest # TODO: use curl script ?? - name: Installing bun become: true ansible.builtin.command: cmd: npm install -g bun changed_when: true # change is checked inside npm - name: Downloading bun install script ansible.builtin.uri: url: https://bun.sh/install return_content: true register: bun_bootstrap - name: Checking if .bun present ansible.builtin.stat: path: '{{ ansible_env.HOME }}/.bun' register: bun_dir # TODO: detect fish install ?? - name: Installing bun ansible.builtin.shell: | {{ bun_bootstrap.content }} args: executable: /bin/bash changed_when: not bun_dir.stat.exists # update path - name: Getting programs list to check fish presence ansible.builtin.package_facts: manager: auto - name: Updating fish path for bun ansible.builtin.shell: fish_add_path -m {{ ansible_env.HOME }}/.bun/bin args: executable: /usr/bin/fish changed_when: false