# vim: set filetype=yaml.ansible : # ## Package: direnv ## Description: automatically read env files when changing directories ## Version: latest ## Methods: system ## Helpers: - --- - name: Set direnv default facts # {{{ ansible.builtin.set_fact: direnv: methods: - system pkgname: RedHat: direnv Alpine: direnv Debian: direnv Darwin: direnv # }}} - name: Configure direnv when: - "'direnv' not in __configured" block: - name: Set direnv install method when: - direnv_imethod is undefined ansible.builtin.set_fact: direnv_imethod: "{{ imethod if imethod in direnv.methods else direnv.methods[0] }}" - name: Append direnv to pkg_sys when: - direnv_imethod == "system" block: - name: Queue direnv system install ansible.builtin.set_fact: pkg_sys: "{{ pkg_sys + [direnv.pkgname[os_family]] }}" - name: Finalise direnv system install ansible.builtin.set_fact: direnv_install: "{{ direnv_imethod }}={{ direnv.pkgname[os_family] }}" - name: Finalize direnv configuration ansible.builtin.set_fact: __configured: "{{ __configured | combine( { 'direnv': direnv_install } ) }}"