- name: Install Development Packages
  ansible.builtin.dnf:
    name:
      # git + github
      - git
      - gh
      # go dev
      - golang
      # neovim
      - neovim
      # perl dev
      - perl
      - perl-App-cpanminus
      - perl-App-cpm
      - perlbrew
      - perl-Carton
      - perl-Dist-Zilla
      - perl-Perl-Critic
      # python dev
      - uv
      # rust
      - rust-analyzer
      # terraform
      - terraform
      # general cli tools
      - bat
      - btop
      - eza
      - fd-find
      - fzf
      - gh
      - htop
      - just
      - jq
      - neofetch
      - pandoc
      - ranger
      - ripgrep
      - the_silver_searcher
      - tmux
      - yq
      # yadm
      - yadm
      # other
      - python3-ansible-lint
      - shellcheck
    state: present
- name: Install Watchexec
  # TODO: Using the dnf module here yields an error...
  ansible.builtin.command:
    argv:
      - dnf
      - install
      - '-y'
      - 'https://github.com/watchexec/watchexec/releases/download/v{{ watchexec_version }}/watchexec-{{ watchexec_version }}-x86_64-unknown-linux-musl.rpm'
  register: watchexec_install
  changed_when: '"Nothing to do." not in watchexec_install.stdout'
  vars:
    watchexec_version: '2.3.0'
