From 985da518b450f4cbf9349be85587a7dd68c0219e Mon Sep 17 00:00:00 2001 From: Matthew Stobbs Date: Sat, 18 Jan 2025 16:00:26 -0700 Subject: [PATCH] fixing and adding packages --- tasks/Darwin/alacritty.yml | 2 +- tasks/Darwin/ansible.yml | 2 +- tasks/Darwin/btop.yml | 2 +- tasks/Darwin/carapace.yml | 2 +- tasks/Darwin/cmake.yml | 2 +- tasks/Darwin/editorconfig.yml | 2 +- tasks/Darwin/firefox.yml | 2 +- tasks/Darwin/fzf.yml | 2 +- tasks/Darwin/ghostty.yml | 2 +- tasks/Darwin/git.yml | 2 +- tasks/Darwin/go.yml | 34 +++--- tasks/Darwin/hugo.yml | 2 +- tasks/Darwin/iterm2.yml | 2 +- tasks/Darwin/jq.yml | 2 +- tasks/Darwin/neovide.yml | 2 +- tasks/Darwin/neovim.yml | 2 +- tasks/Darwin/nerdfonts.yml | 6 +- tasks/Darwin/nodejs.yml | 2 +- tasks/Darwin/nushell.yml | 2 +- tasks/Darwin/pandoc.yml | 2 +- tasks/Darwin/pipx.yml | 2 +- tasks/Darwin/python3-pip.yml | 2 +- tasks/Darwin/ripgrep.yml | 2 +- tasks/Darwin/rust.yml | 2 +- tasks/Darwin/stow.yml | 2 +- tasks/Darwin/terminal.yml | 11 -- tasks/Darwin/terraform.yml | 2 +- tasks/Darwin/tidy.yml | 2 +- tasks/Darwin/tmux.yml | 2 +- tasks/Darwin/vivaldi.yml | 4 - tasks/Darwin/zoxide.yml | 2 +- tasks/Darwin/zsh.yml | 8 -- tasks/Debian/alacritty.yml | 16 +-- tasks/Debian/ansible.yml | 19 +--- tasks/Debian/btop.yml | 14 +-- tasks/Debian/carapace.yml | 11 ++ tasks/Debian/cmake.yml | 11 +- tasks/Debian/consul.yml | 9 ++ tasks/Debian/editorconfig.yml | 11 +- tasks/Debian/firefox.yml | 10 +- tasks/Debian/fzf.yml | 12 +- tasks/Debian/ghostty.yml | 15 +++ tasks/Debian/git.yml | 15 +-- tasks/Debian/go.yml | 7 +- tasks/Debian/hashicorp_repo.yml | 12 ++ tasks/Debian/hugo.yml | 11 +- tasks/Debian/jq.yml | 11 +- tasks/Debian/konsole.yml | 9 ++ tasks/Debian/neovide.yml | 44 +++----- tasks/Debian/neovim.yml | 26 +++-- tasks/Debian/nerdfonts.yml | 5 +- tasks/Debian/nodejs.yml | 13 +-- tasks/Debian/nomad.yml | 9 ++ tasks/Debian/nushell.yml | 23 ++-- tasks/Debian/packer.yml | 8 ++ tasks/Debian/pandoc.yml | 11 +- tasks/Debian/pipx.yml | 10 +- tasks/Debian/python3-pip.yml | 11 +- tasks/Debian/ripgrep.yml | 11 +- tasks/Debian/rust.yml | 13 ++- tasks/Debian/stow.yml | 11 +- tasks/Debian/terraform.yml | 8 ++ tasks/Debian/tidy.yml | 11 +- tasks/Debian/tmux.yml | 11 +- tasks/Debian/vault.yml | 9 ++ tasks/Debian/zfs.yml | 65 +++++++++++ tasks/Debian/zig.yml | 4 + tasks/Debian/zoxide.yml | 17 ++- tasks/Debian_do_install.yml | 33 ++++++ tasks/Linux/alacritty.yml | 2 +- tasks/Linux/files/neovide/neovide.desktop | 4 +- tasks/Linux/gitea.yml | 128 ---------------------- tasks/Linux/go.yml | 39 +++---- tasks/Linux/neovide.yml | 10 +- tasks/Linux/nerdfonts.yml | 31 ++++-- tasks/Linux/nushell.yml | 2 +- tasks/Linux/zig.yml | 16 +++ tasks/RedHat/alacritty.yml | 6 +- tasks/RedHat/ansible.yml | 2 +- tasks/RedHat/btop.yml | 2 +- tasks/RedHat/carapace.yml | 2 +- tasks/RedHat/cmake.yml | 2 +- tasks/RedHat/consul.yml | 4 +- tasks/RedHat/editorconfig.yml | 2 +- tasks/RedHat/firefox.yml | 2 +- tasks/RedHat/fzf.yml | 2 +- tasks/RedHat/ghostty.yml | 2 +- tasks/RedHat/git.yml | 2 +- tasks/RedHat/go.yml | 2 +- tasks/RedHat/hugo.yml | 2 +- tasks/RedHat/jq.yml | 2 +- tasks/RedHat/konsole.yml | 2 +- tasks/RedHat/neovide.yml | 4 +- tasks/RedHat/neovim.yml | 4 +- tasks/RedHat/nerdfonts.yml | 2 +- tasks/RedHat/nodejs.yml | 2 +- tasks/RedHat/nomad.yml | 4 +- tasks/RedHat/nushell.yml | 8 +- tasks/RedHat/packer.yml | 4 +- tasks/RedHat/pandoc.yml | 2 +- tasks/RedHat/pipx.yml | 2 +- tasks/RedHat/python3-pip.yml | 2 +- tasks/RedHat/ripgrep.yml | 2 +- tasks/RedHat/rust.yml | 2 +- tasks/RedHat/stow.yml | 2 +- tasks/RedHat/terminal.yml | 12 -- tasks/RedHat/terraform.yml | 4 +- tasks/RedHat/tidy.yml | 2 +- tasks/RedHat/tmux.yml | 2 +- tasks/RedHat/vault.yml | 4 +- tasks/RedHat/vivaldi.yml | 14 --- tasks/RedHat/zfs.yml | 2 +- tasks/RedHat/zoxide.yml | 1 - vars/main.yml | 41 +++++++ 114 files changed, 555 insertions(+), 498 deletions(-) delete mode 100644 tasks/Darwin/terminal.yml delete mode 100644 tasks/Darwin/vivaldi.yml delete mode 100644 tasks/Darwin/zsh.yml create mode 100644 tasks/Debian/carapace.yml create mode 100644 tasks/Debian/consul.yml create mode 100644 tasks/Debian/ghostty.yml create mode 100644 tasks/Debian/hashicorp_repo.yml create mode 100644 tasks/Debian/konsole.yml create mode 100644 tasks/Debian/nomad.yml create mode 100644 tasks/Debian/packer.yml create mode 100644 tasks/Debian/terraform.yml create mode 100644 tasks/Debian/vault.yml create mode 100644 tasks/Debian/zfs.yml create mode 100644 tasks/Debian/zig.yml create mode 100644 tasks/Debian_do_install.yml delete mode 100644 tasks/Linux/gitea.yml create mode 100644 tasks/Linux/zig.yml delete mode 100644 tasks/RedHat/terminal.yml delete mode 100644 tasks/RedHat/vivaldi.yml diff --git a/tasks/Darwin/alacritty.yml b/tasks/Darwin/alacritty.yml index f60a4d6..bf95a48 100644 --- a/tasks/Darwin/alacritty.yml +++ b/tasks/Darwin/alacritty.yml @@ -1,7 +1,7 @@ --- - name: append alacritty to caskpkgs set_fact: - caskpkgs: "{{ (caskpkgs | default([])) + [ 'alacritty' ] }}" + caskpkgs: "{{ caskpkgs + [ 'alacritty' ] }}" tags: - MacOS - brew diff --git a/tasks/Darwin/ansible.yml b/tasks/Darwin/ansible.yml index ff4df0d..8ad7d43 100644 --- a/tasks/Darwin/ansible.yml +++ b/tasks/Darwin/ansible.yml @@ -1,7 +1,7 @@ --- - name: append ansible to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'ansible' ]}}" + brewpkgs: "{{ brewpkgs + [ 'ansible' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/btop.yml b/tasks/Darwin/btop.yml index 2aeca30..4640766 100644 --- a/tasks/Darwin/btop.yml +++ b/tasks/Darwin/btop.yml @@ -1,7 +1,7 @@ --- - name: append btop to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'btop' ]}}" + brewpkgs: "{{ brewpkgs + [ 'btop' ]}}" tags: - MacOS - brew diff --git a/tasks/Darwin/carapace.yml b/tasks/Darwin/carapace.yml index 46a3112..e3fe27f 100644 --- a/tasks/Darwin/carapace.yml +++ b/tasks/Darwin/carapace.yml @@ -1,7 +1,7 @@ --- - name: append carapace to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'carapace' ] }}" + brewpkgs: "{{ brewpkgs + [ 'carapace' ] }}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/cmake.yml b/tasks/Darwin/cmake.yml index 15c14be..b532339 100644 --- a/tasks/Darwin/cmake.yml +++ b/tasks/Darwin/cmake.yml @@ -1,7 +1,7 @@ --- - name: append cmake to caskpkgs set_fact: - caskpkgs: "{{ (caskpkgs | default([])) + [ 'homebrew/cask/cmake' ] }}" + caskpkgs: "{{ caskpkgs + [ 'homebrew/cask/cmake' ] }}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/editorconfig.yml b/tasks/Darwin/editorconfig.yml index 72b8cd0..41ccede 100644 --- a/tasks/Darwin/editorconfig.yml +++ b/tasks/Darwin/editorconfig.yml @@ -1,7 +1,7 @@ --- - name: append editorconfig to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'editorconfig' ]}}" + brewpkgs: "{{ brewpkgs + [ 'editorconfig' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/firefox.yml b/tasks/Darwin/firefox.yml index 0cd5db8..5143070 100644 --- a/tasks/Darwin/firefox.yml +++ b/tasks/Darwin/firefox.yml @@ -1,7 +1,7 @@ --- - name: append firefox to caskpkgs set_fact: - caskpkgs: "{{ (caskpkgs | default([])) + [ 'firefox' ] }}" + caskpkgs: "{{ caskpkgs + [ 'firefox' ] }}" tags: - packages - MacOS diff --git a/tasks/Darwin/fzf.yml b/tasks/Darwin/fzf.yml index 965299b..cf23e1c 100644 --- a/tasks/Darwin/fzf.yml +++ b/tasks/Darwin/fzf.yml @@ -1,7 +1,7 @@ --- - name: append fzf to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'fzf' ]}}" + brewpkgs: "{{ brewpkgs + [ 'fzf' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/ghostty.yml b/tasks/Darwin/ghostty.yml index 762504a..2e4611f 100644 --- a/tasks/Darwin/ghostty.yml +++ b/tasks/Darwin/ghostty.yml @@ -1,7 +1,7 @@ --- - name: append ghostty to caskpkgs set_fact: - caskpkgs: "{{ (caskpkgs | default([])) + [ 'ghostty' ] }}" + caskpkgs: "{{ caskpkgs + [ 'ghostty' ] }}" tags: - MacOS - brew diff --git a/tasks/Darwin/git.yml b/tasks/Darwin/git.yml index b0a898f..188d424 100644 --- a/tasks/Darwin/git.yml +++ b/tasks/Darwin/git.yml @@ -13,7 +13,7 @@ - name: append git to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + git_pkgs }}" + brewpkgs: "{{ brewpkgs + git_pkgs }}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/go.yml b/tasks/Darwin/go.yml index d13a774..a10d848 100644 --- a/tasks/Darwin/go.yml +++ b/tasks/Darwin/go.yml @@ -1,35 +1,35 @@ --- -- name: Set go Filename +- name: set go arch ansible.builtin.set_fact: - goFilename: "go{{ go.version }}.darwin-{{ arch[ansible_architecture] }}.{{ go.darwin.extension }}" + arch: "{% if ansible_archtecture == 'aarch64' %}arm64{% else %}amd64{% endif %}" + +- name: set go Filename + ansible.builtin.set_fact: + goFilename: "go{{ versions.go }}.darwin-{{ arch }}.pkg" tags: - dev - go -- name: Download latest go package for MacOS - become: true +- name: create temp path + ansible.builtin.tempfile: + state: directory + prefix: go_dl. + register: d_go_dl_tmp + +- name: download latest go package for macOS ansible.builtin.get_url: - dest: "/tmp/{{ goFilename }}" + dest: "{{ d_go_dl_tmp.path }}/{{ goFilename }}" url: "https://go.dev/dl/{{ goFilename }}" - checksum: "sha256:{{ go.darwin.sum[ansible_architecture] }}" + checksum: "{{ _go[versions.go].Darwin[arch] }}" decompress: false tags: - dev - go -- name: Install go MacOS use pkg file +- name: install go macOS use pkg file become: true ansible.builtin.command: - cmd: "installer -pkg /tmp/{{ goFilename }} -target /" - tags: - - dev - - go - -- name: Cleanup go package download - become: true - ansible.builtin.file: - path: "/tmp/{{ goFilename }}" - state: absent + cmd: "installer -pkg {{ d_go_dl_tmp.path }}/{{ goFilename }} -target /" tags: - dev - go diff --git a/tasks/Darwin/hugo.yml b/tasks/Darwin/hugo.yml index eab1b4a..ee3137b 100644 --- a/tasks/Darwin/hugo.yml +++ b/tasks/Darwin/hugo.yml @@ -1,7 +1,7 @@ --- - name: append hugo to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'hugo' ]}}" + brewpkgs: "{{ brewpkgs + [ 'hugo' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/iterm2.yml b/tasks/Darwin/iterm2.yml index fd8e140..c46de29 100644 --- a/tasks/Darwin/iterm2.yml +++ b/tasks/Darwin/iterm2.yml @@ -1,4 +1,4 @@ --- - name: append iterm2 to caskpkgs set_fact: - caskpkgs: "{{ (caskpkgs | default([])) + [ 'iterm2' ] }}" + caskpkgs: "{{ caskpkgs + [ 'iterm2' ] }}" diff --git a/tasks/Darwin/jq.yml b/tasks/Darwin/jq.yml index a161487..c700df4 100644 --- a/tasks/Darwin/jq.yml +++ b/tasks/Darwin/jq.yml @@ -1,7 +1,7 @@ --- - name: append jq to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'jq' ]}}" + brewpkgs: "{{ brewpkgs + [ 'jq' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/neovide.yml b/tasks/Darwin/neovide.yml index e604d6d..b445470 100644 --- a/tasks/Darwin/neovide.yml +++ b/tasks/Darwin/neovide.yml @@ -1,4 +1,4 @@ --- - name: append neovide to caskpkgs set_fact: - caskpkgs: "{{ (caskpkgs | default([])) + [ 'neovide' ] }}" + caskpkgs: "{{ caskpkgs + [ 'neovide' ] }}" diff --git a/tasks/Darwin/neovim.yml b/tasks/Darwin/neovim.yml index 9b3bc59..22ecb96 100644 --- a/tasks/Darwin/neovim.yml +++ b/tasks/Darwin/neovim.yml @@ -1,7 +1,7 @@ --- - name: append neovim to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'neovim' ]}}" + brewpkgs: "{{ brewpkgs + [ 'neovim' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/nerdfonts.yml b/tasks/Darwin/nerdfonts.yml index e2d4745..8d1c3e1 100644 --- a/tasks/Darwin/nerdfonts.yml +++ b/tasks/Darwin/nerdfonts.yml @@ -5,12 +5,12 @@ state: present - name: generate nerdfont cask names + set_fact: + nerdfont_casks: "{{ (nerdfont_casks | default([])) + [ 'homebrew/cask/font-' + font.brew + '-nerd-font' ] }}" loop: "{{ nerdfonts }}" loop_control: loop_var: font - set_fact: - nerdfont_casks: "{{ (nerdfont_casks | default([])) + [ 'homebrew/cask/font-' + font.brew + '-nerd-font' ] }}" - name: append nerdfonts to caskpkgs set_fact: - caskpkgs: "{{ (caskpkgs | default([])) + nerdfont_casks }}" + caskpkgs: "{{ caskpkgs + nerdfont_casks }}" diff --git a/tasks/Darwin/nodejs.yml b/tasks/Darwin/nodejs.yml index 9076057..130fe54 100644 --- a/tasks/Darwin/nodejs.yml +++ b/tasks/Darwin/nodejs.yml @@ -1,7 +1,7 @@ --- - name: append node to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'node' ]}}" + brewpkgs: "{{ brewpkgs + [ 'node' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/nushell.yml b/tasks/Darwin/nushell.yml index d331d51..f210608 100644 --- a/tasks/Darwin/nushell.yml +++ b/tasks/Darwin/nushell.yml @@ -1,7 +1,7 @@ --- - name: append nushell to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'nushell' ]}}" + brewpkgs: "{{ brewpkgs + [ 'nushell' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/pandoc.yml b/tasks/Darwin/pandoc.yml index fb9639d..adbeefc 100644 --- a/tasks/Darwin/pandoc.yml +++ b/tasks/Darwin/pandoc.yml @@ -1,7 +1,7 @@ --- - name: append pandoc to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'pandoc' ]}}" + brewpkgs: "{{ brewpkgs + [ 'pandoc' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/pipx.yml b/tasks/Darwin/pipx.yml index aba00a3..283ca22 100644 --- a/tasks/Darwin/pipx.yml +++ b/tasks/Darwin/pipx.yml @@ -1,7 +1,7 @@ --- - name: append pipx to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'pipx' ]}}" + brewpkgs: "{{ brewpkgs + [ 'pipx' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/python3-pip.yml b/tasks/Darwin/python3-pip.yml index 7304434..c92c13d 100644 --- a/tasks/Darwin/python3-pip.yml +++ b/tasks/Darwin/python3-pip.yml @@ -1,7 +1,7 @@ --- - name: append python3 to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'python3' ]}}" + brewpkgs: "{{ brewpkgs + [ 'python3' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/ripgrep.yml b/tasks/Darwin/ripgrep.yml index 218123a..080acd6 100644 --- a/tasks/Darwin/ripgrep.yml +++ b/tasks/Darwin/ripgrep.yml @@ -1,7 +1,7 @@ --- - name: append ripgrep to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'ripgrep' ]}}" + brewpkgs: "{{ brewpkgs + [ 'ripgrep' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/rust.yml b/tasks/Darwin/rust.yml index b00ce16..153b99f 100644 --- a/tasks/Darwin/rust.yml +++ b/tasks/Darwin/rust.yml @@ -1,7 +1,7 @@ --- - name: append rust to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'rust' ]}}" + brewpkgs: "{{ brewpkgs + [ 'rust' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/stow.yml b/tasks/Darwin/stow.yml index 3e9cda3..9c385a3 100644 --- a/tasks/Darwin/stow.yml +++ b/tasks/Darwin/stow.yml @@ -1,7 +1,7 @@ --- - name: append stow to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'stow' ]}}" + brewpkgs: "{{ brewpkgs + [ 'stow' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/terminal.yml b/tasks/Darwin/terminal.yml deleted file mode 100644 index 5972493..0000000 --- a/tasks/Darwin/terminal.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# default on Linux is alacritty -# edit config/users.yml:users::terminal:os_name:package name -# ie: config/users.yml:users:[name: stobbsm]:terminal:Fedora:konsole -- name: install and configure system terminal emulator - loop: "{{ users }}" - ansible.builtin.include_tasks: - file: "packages/{{ ansible_os_family }}/{{ item.terminal[ansible_distribution] | default('alacritty') }}.yml" - tags: - - package - - Darwin diff --git a/tasks/Darwin/terraform.yml b/tasks/Darwin/terraform.yml index efd94fc..7c3595a 100644 --- a/tasks/Darwin/terraform.yml +++ b/tasks/Darwin/terraform.yml @@ -1,4 +1,4 @@ --- - name: append terraform to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'terraform' ]}}" + brewpkgs: "{{ brewpkgs + [ 'terraform' ]}}" diff --git a/tasks/Darwin/tidy.yml b/tasks/Darwin/tidy.yml index aed7359..950c008 100644 --- a/tasks/Darwin/tidy.yml +++ b/tasks/Darwin/tidy.yml @@ -1,7 +1,7 @@ --- - name: append tidy-html5 to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'tidy-html5' ]}}" + brewpkgs: "{{ brewpkgs + [ 'tidy-html5' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/tmux.yml b/tasks/Darwin/tmux.yml index ccc766c..56d74cf 100644 --- a/tasks/Darwin/tmux.yml +++ b/tasks/Darwin/tmux.yml @@ -1,7 +1,7 @@ --- - name: append tmux to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'tmux' ]}}" + brewpkgs: "{{ brewpkgs + [ 'tmux' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/vivaldi.yml b/tasks/Darwin/vivaldi.yml deleted file mode 100644 index 834142b..0000000 --- a/tasks/Darwin/vivaldi.yml +++ /dev/null @@ -1,4 +0,0 @@ ---- -- name: append vivaldi to caskpkgs - set_fact: - caskpkgs: "{{ (caskpkgs | default([])) + [ 'vivaldi' ] }}" diff --git a/tasks/Darwin/zoxide.yml b/tasks/Darwin/zoxide.yml index df5ee0b..466303e 100644 --- a/tasks/Darwin/zoxide.yml +++ b/tasks/Darwin/zoxide.yml @@ -1,7 +1,7 @@ --- - name: append zoxide to brewpkgs set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'zoxide' ]}}" + brewpkgs: "{{ brewpkgs + [ 'zoxide' ]}}" tags: - MacOS - homebrew diff --git a/tasks/Darwin/zsh.yml b/tasks/Darwin/zsh.yml deleted file mode 100644 index 12196f0..0000000 --- a/tasks/Darwin/zsh.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- -- name: append zsh to brewpkgs - set_fact: - brewpkgs: "{{ (brewpkgs | default([])) + [ 'zsh' ]}}" - tags: - - MacOS - - homebrew - - package diff --git a/tasks/Debian/alacritty.yml b/tasks/Debian/alacritty.yml index 777b26f..3e50c71 100644 --- a/tasks/Debian/alacritty.yml +++ b/tasks/Debian/alacritty.yml @@ -1,15 +1,14 @@ --- - name: install rust and cargo ansible.builtin.include_tasks: - file: "packages/{{ ansible_os_family }}/rust.yml" + file: "{{ ansible_os_family }}/rust.yml" tags: - rust - dependency - name: install alacritty dependencies for Debian based distributions - become: true - ansible.builtin.apt: - name: + ansible.builtin.set_fact: + alacritty_deps: - cmake - pkg-config - libfreetype6-dev @@ -17,10 +16,7 @@ - libxcb-xfixes0-dev - libxkbcommon-dev - python3 - state: present - tags: - - dependency - - Debian -- include_tasks: - file: packages/Linux/alacritty.yml +- name: add to syspkgs + ansible.builtin.set_fact: + syspkgs: "{{ syspkgs + alacritty_deps }}" diff --git a/tasks/Debian/ansible.yml b/tasks/Debian/ansible.yml index 405940f..34d8bba 100644 --- a/tasks/Debian/ansible.yml +++ b/tasks/Debian/ansible.yml @@ -1,14 +1,7 @@ +# Install ansible for current platform --- -- name: install ansible for Debian based distros - become: true - ansible.builtin.apt: - name: ansible - state: latest - register: ansible_changed - tags: - - Debian - - linux - - package -- name: stop playbook if ansible updated - when: ansible_changed.changed - meta: end_play + +- name: append to pkgs + set_fact: + syspkgs: "{{ (syspkgs + [ 'ansible' ] }}" + diff --git a/tasks/Debian/btop.yml b/tasks/Debian/btop.yml index 905e1bc..571f07f 100644 --- a/tasks/Debian/btop.yml +++ b/tasks/Debian/btop.yml @@ -1,11 +1,5 @@ --- -- name: install btop for Debian distros - become: true - when: ansible_os_family == "Debian" - ansible.builtin.apt: - name: btop - state: latest - tags: - - Debian - - linux - - package +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'btop' ] }}" + diff --git a/tasks/Debian/carapace.yml b/tasks/Debian/carapace.yml new file mode 100644 index 0000000..c213f5b --- /dev/null +++ b/tasks/Debian/carapace.yml @@ -0,0 +1,11 @@ +--- +- name: enable carapace repository + become: true + ansible.builtin.apt_repository: + repo: "deb [trusted=yes] https://apt.fury.io/rsteube/ /" + state: present + update_cache: false + +- name: add carapace to syspkgs + ansible.builtin.set_fact: + syspkgs: "{{ syspkgs + [ 'carapace-bin' ] }}" diff --git a/tasks/Debian/cmake.yml b/tasks/Debian/cmake.yml index 62ab4bc..02dda2b 100644 --- a/tasks/Debian/cmake.yml +++ b/tasks/Debian/cmake.yml @@ -1,10 +1,9 @@ --- -- name: Install cmake for Debian based distros - become: true - ansible.builtin.apt: - name: cmake - state: latest +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'cmake' ] }}" tags: - - Debian + - RedHat - linux - package + diff --git a/tasks/Debian/consul.yml b/tasks/Debian/consul.yml new file mode 100644 index 0000000..15d64cb --- /dev/null +++ b/tasks/Debian/consul.yml @@ -0,0 +1,9 @@ +--- +- name: ensure hashicorp repo is active + ansible.builtin.include_tasks: + file: "{{ ansible_os_family }}/hashicorp_repo.yml" + +- name: append to pkgs + set_fact: + syspkgs: "{{ (syspkgs + [ 'consul' ] }}" + diff --git a/tasks/Debian/editorconfig.yml b/tasks/Debian/editorconfig.yml index 515c9be..b5e2623 100644 --- a/tasks/Debian/editorconfig.yml +++ b/tasks/Debian/editorconfig.yml @@ -1,11 +1,8 @@ --- -- name: Install editorconfig Debian based distros - become: true - ansible.builtin.apt: - name: editorconfig - state: latest +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'editorconfig' ] }}" tags: - - Debian + - RedHat - linux - package - diff --git a/tasks/Debian/firefox.yml b/tasks/Debian/firefox.yml index 990d88a..0ead138 100644 --- a/tasks/Debian/firefox.yml +++ b/tasks/Debian/firefox.yml @@ -1,9 +1,9 @@ --- -- name: install firefox on Linux distros - ansible.builtin.apt: - name: firefox - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'firefox' ] }}" tags: - packages - - Debian + - RedHat - web diff --git a/tasks/Debian/fzf.yml b/tasks/Debian/fzf.yml index 8693622..a68a047 100644 --- a/tasks/Debian/fzf.yml +++ b/tasks/Debian/fzf.yml @@ -1,10 +1,10 @@ --- -- name: Install fzf for Debian based distros - become: true - ansible.builtin.apt: - name: fzf - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'fzf' ] }}" tags: - - Debian + - RedHat - linux - package + diff --git a/tasks/Debian/ghostty.yml b/tasks/Debian/ghostty.yml new file mode 100644 index 0000000..11753ce --- /dev/null +++ b/tasks/Debian/ghostty.yml @@ -0,0 +1,15 @@ +--- +- name: ensure dependencies + ansible.builtin.include_tasks: + file: packages/RedHat/terra_repo.yml + tags: + - dependency + - package + - terra + - syspkgs + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'ghostty' ] }}" + tags: + - syspkgs diff --git a/tasks/Debian/git.yml b/tasks/Debian/git.yml index 20f0a9c..8634f42 100644 --- a/tasks/Debian/git.yml +++ b/tasks/Debian/git.yml @@ -1,15 +1,10 @@ --- -- name: Install git and git extras for Debian based distros - become: true - ansible.builtin.apt: - name: - - git - - git-delta - - git-email - - git-lfs - state: latest +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'git', 'git-delta', 'git-email', 'git-lfs' ] }}" tags: - - Debian + - RedHat - linux - package + diff --git a/tasks/Debian/go.yml b/tasks/Debian/go.yml index 9363a7a..4607b93 100644 --- a/tasks/Debian/go.yml +++ b/tasks/Debian/go.yml @@ -1,4 +1,5 @@ --- -- name: install go for linux - ansible.builtin.include_tasks: - file: "packages/Linux/go.yml" + +- name: append to pkgs + set_fact: + altpkgs: "{{ altpkgs + [ 'packages/Linux/go.yml' ] }}" diff --git a/tasks/Debian/hashicorp_repo.yml b/tasks/Debian/hashicorp_repo.yml new file mode 100644 index 0000000..dece278 --- /dev/null +++ b/tasks/Debian/hashicorp_repo.yml @@ -0,0 +1,12 @@ +# install hashicorp vault for Debian/Ubuntu +--- +- name: install hashicorp archive gpg key + become: true + ansible.builtin.command: + cmd: wget -O - https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg + +- name: enable hasicorp repo for debian + ansible.builtin.apt_repository: + repo: "deb [arch={{ ansible_architecture }} signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com {{ ansible_distribution_release }} main" + state: present + update_cache: false diff --git a/tasks/Debian/hugo.yml b/tasks/Debian/hugo.yml index 6fe005e..764cfa5 100644 --- a/tasks/Debian/hugo.yml +++ b/tasks/Debian/hugo.yml @@ -1,11 +1,10 @@ --- -- name: Install hugo for Debian based distros - become: true - ansible.builtin.apt: - name: hugo - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'hugo' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/jq.yml b/tasks/Debian/jq.yml index 4ec0070..9a38d88 100644 --- a/tasks/Debian/jq.yml +++ b/tasks/Debian/jq.yml @@ -1,11 +1,10 @@ --- -- name: Install jq for Debian based distros - become: true - ansible.builtin.apt: - name: jq - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'jq' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/konsole.yml b/tasks/Debian/konsole.yml new file mode 100644 index 0000000..d19b56d --- /dev/null +++ b/tasks/Debian/konsole.yml @@ -0,0 +1,9 @@ +--- + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'konsole' ] }}" + tags: + - RedHat + - linux + - package diff --git a/tasks/Debian/neovide.yml b/tasks/Debian/neovide.yml index cb91219..361d174 100644 --- a/tasks/Debian/neovide.yml +++ b/tasks/Debian/neovide.yml @@ -1,29 +1,19 @@ --- -- name: install debian dependencies - when: ansible_architecture != "aarch64" - become: true - ansible.builtin.apt: - name: - - curl - - gnupg - - ca-certificates - - git - - gcc-multilib - - g++-multilib - - cmake - - libssl-dev - - pkg-config - - libfreetyp6-dev - - libasound2-dev - - libexpat1-dev - - libxcb-composite0-dev - - libbz2-dev - - libsndio-dev - - freeglut3-dev - - libxmu-dev - - libxi-dev - - libfontconfig1-dev - - libxcursor-dev +- name: set neovide pkg dependencies + set_fact: + neovide_deps: + - cargo + - fontconfig-devel + - freetype-devel + - libX11-xcb + - libX11-devel + - libstdc++-static + - libstdc++-devel + - "@Development Tools" + - "@Development Libraries" -- ansible.builtin.include_tasks: - file: packages/Linux/neovide.yml +- name: append to pkgs + when: ansible_architecture != "aarch64" + set_fact: + syspkgs: "{{ syspkgs + neovide_deps }}" + altpkgs: "{{ altpkgs + [ 'Linux/neovide.yml' ] }}" diff --git a/tasks/Debian/neovim.yml b/tasks/Debian/neovim.yml index 2753c85..cb1122f 100644 --- a/tasks/Debian/neovim.yml +++ b/tasks/Debian/neovim.yml @@ -1,12 +1,22 @@ --- -- name: Install neovim for Debian based distros - become: true - ansible.builtin.apt: - name: - - neovim - - python3-neovim - state: latest +- name: append to pkgs + when: ansible_distribution == "Fedora" + set_fact: + syspkgs: "{{ syspkgs + [ 'neovim', 'python3-neovim' ] }}" tags: - - Debian + - RedHat - linux - package + +- name: install neovim appimage + when: ansible_distribution != "Fedora" + become: true + ansible.builtin.get_url: + url: https://github.com/neovim/neovim/releases/download/v0.10.0/nvim.appimage + dest: /usr/local/bin/nvim + checksum: sha256:6a021e9465fe3d3375e28c3e94c1c2c4f7d1a5a67e4a78cf52d18d77b1471390 + tags: + - RedHat + - linux + - package + diff --git a/tasks/Debian/nerdfonts.yml b/tasks/Debian/nerdfonts.yml index 75eb9ac..5e9fa72 100644 --- a/tasks/Debian/nerdfonts.yml +++ b/tasks/Debian/nerdfonts.yml @@ -1,3 +1,4 @@ --- -- ansible.builtin.include_tasks: - file: packages/Linux/nerdfonts.yml +- name: append to pkgs + set_fact: + altpkgs: "{{ altpkgs + [ 'Linux/nerdfonts.yml' ] }}" diff --git a/tasks/Debian/nodejs.yml b/tasks/Debian/nodejs.yml index 9d1a7b1..88e8acd 100644 --- a/tasks/Debian/nodejs.yml +++ b/tasks/Debian/nodejs.yml @@ -1,13 +1,10 @@ --- -- name: Install nodejs and npm for Debian based distros - become: true - ansible.builtin.apt: - name: - - nodejs - - npm - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'nodejs', 'npm' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/nomad.yml b/tasks/Debian/nomad.yml new file mode 100644 index 0000000..af76c25 --- /dev/null +++ b/tasks/Debian/nomad.yml @@ -0,0 +1,9 @@ +--- +- name: ensure hashicorp repo is active + ansible.builtin.include_tasks: + file: "{{ ansible_os_family }}/hashicorp_repo.yml" + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'nomad' ] }}" + diff --git a/tasks/Debian/nushell.yml b/tasks/Debian/nushell.yml index bed09de..e6a5088 100644 --- a/tasks/Debian/nushell.yml +++ b/tasks/Debian/nushell.yml @@ -1,11 +1,16 @@ --- -- name: install Debian dependencies - become: true - ansible.builtin.apt: - name: - - pkg-config - - libssl-dev - - build-essential +- name: install RedHat dependencies + set_fact: + nushell_pkgdeps: + - cargo + - libxcb + - openssl-devel + - libX11-devel + nushell_altdeps: + - Linux/nushell.yml + - "{{ ansible_os_family }}/carapace.yml" -- ansible.builtin.include_tasks: - file: packages/Linux/nushell.yml +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + nushell_pkgdeps }}" + altpkgs: "{{ altpkgs + nushell_altdeps }}" diff --git a/tasks/Debian/packer.yml b/tasks/Debian/packer.yml new file mode 100644 index 0000000..777167c --- /dev/null +++ b/tasks/Debian/packer.yml @@ -0,0 +1,8 @@ +--- +- name: ensure hashicorp repo is active + ansible.builtin.include_tasks: + file: "{{ ansible_os_family }}/hashicorp_repo.yml" + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'packer' ] }}" diff --git a/tasks/Debian/pandoc.yml b/tasks/Debian/pandoc.yml index a269abc..9f3c3b8 100644 --- a/tasks/Debian/pandoc.yml +++ b/tasks/Debian/pandoc.yml @@ -1,11 +1,10 @@ --- -- name: Install pandoc for Debian based distros - become: true - ansible.builtin.apt: - name: pandoc - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'pandoc' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/pipx.yml b/tasks/Debian/pipx.yml index ca912f1..77c48a1 100644 --- a/tasks/Debian/pipx.yml +++ b/tasks/Debian/pipx.yml @@ -1,11 +1,9 @@ --- -- name: Install pipx for Debian based distros - become: true - ansible.builtin.apt: - name: pipx - state: latest +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'pipx' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/python3-pip.yml b/tasks/Debian/python3-pip.yml index 4052904..29a4009 100644 --- a/tasks/Debian/python3-pip.yml +++ b/tasks/Debian/python3-pip.yml @@ -1,11 +1,10 @@ --- -- name: Install pip for Debian based distros - become: true - ansible.builtin.apt: - name: python3-pip - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'python3-pip' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/ripgrep.yml b/tasks/Debian/ripgrep.yml index 53f8e7e..9a907f6 100644 --- a/tasks/Debian/ripgrep.yml +++ b/tasks/Debian/ripgrep.yml @@ -1,11 +1,10 @@ --- -- name: Install ripgrep for Debian based distros - become: true - ansible.builtin.apt: - name: ripgrep - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'ripgrep' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/rust.yml b/tasks/Debian/rust.yml index cf41afa..810d54d 100644 --- a/tasks/Debian/rust.yml +++ b/tasks/Debian/rust.yml @@ -1,13 +1,14 @@ --- -- name: Install rust and cargo for Debian based distros - become: true - ansible.builtin.apt: - name: +- name: set rust_pkgs + set_fact: + rust_pkgs: - rustc - cargo - state: latest +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + rust_pkgs }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/stow.yml b/tasks/Debian/stow.yml index de71c7f..e66719c 100644 --- a/tasks/Debian/stow.yml +++ b/tasks/Debian/stow.yml @@ -1,11 +1,10 @@ --- -- name: Install stow for Debian based distros - become: true - ansible.builtin.apt: - name: stow - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'stow' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/terraform.yml b/tasks/Debian/terraform.yml new file mode 100644 index 0000000..93a805c --- /dev/null +++ b/tasks/Debian/terraform.yml @@ -0,0 +1,8 @@ +--- +- name: ensure hashicorp repo is active + ansible.builtin.include_tasks: + file: "{{ ansible_os_family }}/hashicorp_repo.yml" + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'terraform' ] }}" diff --git a/tasks/Debian/tidy.yml b/tasks/Debian/tidy.yml index c2df76c..222e909 100644 --- a/tasks/Debian/tidy.yml +++ b/tasks/Debian/tidy.yml @@ -1,11 +1,10 @@ --- -- name: Install tidy for Debian based distros - become: true - ansible.builtin.apt: - name: tidy - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'tidy' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/tmux.yml b/tasks/Debian/tmux.yml index 3181e0a..81e73f4 100644 --- a/tasks/Debian/tmux.yml +++ b/tasks/Debian/tmux.yml @@ -1,11 +1,10 @@ --- -- name: Install tmux for Debian based distros - become: true - ansible.builtin.apt: - name: tmux - state: latest + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'tmux' ] }}" tags: - - Debian + - RedHat - linux - package diff --git a/tasks/Debian/vault.yml b/tasks/Debian/vault.yml new file mode 100644 index 0000000..76b1935 --- /dev/null +++ b/tasks/Debian/vault.yml @@ -0,0 +1,9 @@ +# install hashicorp vault for RedHat +--- +- name: ensure hashicorp repo is active + ansible.builtin.include_tasks: + file: "{{ ansible_os_family }}/hashicorp_repo.yml" + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'vault' ] }}" diff --git a/tasks/Debian/zfs.yml b/tasks/Debian/zfs.yml new file mode 100644 index 0000000..b002d6c --- /dev/null +++ b/tasks/Debian/zfs.yml @@ -0,0 +1,65 @@ +--- +- name: set rpm_dist + ansible.builtin.command: rpm --eval "%{dist}" + register: rpm_dist + tags: + - packages + - RedHat + - config + +- name: set zfs repo facts + set_fact: + zfs_repo_base: https://zfsonlinux.org + zfs_gpg_key: https://raw.githubusercontent.com/zfsonlinux/zfsonlinux.github.com/master/zfs-release/RPM-GPG-KEY-openzfs-key2 + zfs_gpg_key_fingerprint: 7DC7 299D CF7C 7FD9 CD87 701B A599 FD5E 9DB8 4141 + +- name: el9+ specific configuration + block: + - name: set el9+ facts + set_fact: + rh_release: epel + zfs_release: 2-3 + when: + - ansible_distribution != 'Fedora' + # TODO: figure out a better way to identify EPEL based distros + # TODO: Alma, rocky, centos, rhel + tags: + - packages + - RedHat + - config + +- name: Fedora specific configuration + block: + - name: set fedora facts + set_fact: + rh_release: fedora + zfs_release: 2-6 + when: ansible_distribution == 'Fedora' + when: ansible_distribution == 'Fedora' + +- name: add openzfs gpg_key + ansible.builtin.rpm_key: + key: "{{ zfs_gpg_key }}" + fingerprint: "{{ zfs_gpg_key_fingerprint }}" + state: present + become: true + tags: + - packages + - RedHat + +- name: enable openzfs repository + ansible.builtin.dnf: + name: "{{ zfs_repo_base }}{{ rh_release }}/zfs-release-{{ zfs_release }}{{ rpm_dist.stdout }}.noarch.rpm" + state: "{{ install_state }}" + become: true + tags: + - packages + - RedHat + +- name: append to pkgs + set_fact: + syspkgs: "{{ syspkgs + [ 'zfs' ] }}" + become: true + tags: + - RedHat + - packages diff --git a/tasks/Debian/zig.yml b/tasks/Debian/zig.yml new file mode 100644 index 0000000..ddb44b0 --- /dev/null +++ b/tasks/Debian/zig.yml @@ -0,0 +1,4 @@ +--- +- name: add zig to altpkgs + ansible.builtin.set_fact: + altpkgs: "{{ altpkgs + [ 'zig' ] }}" diff --git a/tasks/Debian/zoxide.yml b/tasks/Debian/zoxide.yml index 31650be..3a1c333 100644 --- a/tasks/Debian/zoxide.yml +++ b/tasks/Debian/zoxide.yml @@ -1,11 +1,16 @@ --- -- name: Install zoxide for Debian based distros +- name: Enable copr repo for zoxide become: true - ansible.builtin.apt: - name: zoxide - state: latest + when: ansible_distribution != "Fedora" + community.general.copr: + name: atim/zoxide + state: enabled + chroot: "{{ coprChroot[ansible_distribution].chroot | default(omit) }}" + +- name: append to pkgs + set_fact: + syspkgs: "{{ (syspkgs | default([])) + [ 'zoxide' ] }}" tags: - - Debian + - RedHat - linux - package - diff --git a/tasks/Debian_do_install.yml b/tasks/Debian_do_install.yml new file mode 100644 index 0000000..938f741 --- /dev/null +++ b/tasks/Debian_do_install.yml @@ -0,0 +1,33 @@ +--- +- name: full system upgrade if enabled + ansible.builtin.apt: + name: "*" + state: latest + when: full_upgrade + become: true + tags: + - upgrade + - packages + - asroot + +- name: install packages from system package manager + ansible.builtin.dnf: + update_cache: true + name: "{{ syspkgs | unique }}" + state: "{{ install_state }}" + when: syspkgs|length > 0 + become: true + tags: + - packages + - asroot + - os + +- name: install packages from outside system package manager + ansible.builtin.include_tasks: + file: "{{ altpkg }}" + loop: "{{ altpkgs }}" + loop_control: + loop_var: altpkg + tags: + - packages + - altinstall diff --git a/tasks/Linux/alacritty.yml b/tasks/Linux/alacritty.yml index 13042ce..663e234 100644 --- a/tasks/Linux/alacritty.yml +++ b/tasks/Linux/alacritty.yml @@ -10,4 +10,4 @@ - --git - https://github.com/alacritty/alacritty.git - --tag - - v0.13.2 + - "v{{ versions.alacritty }}" diff --git a/tasks/Linux/files/neovide/neovide.desktop b/tasks/Linux/files/neovide/neovide.desktop index f0da33a..86f95a2 100644 --- a/tasks/Linux/files/neovide/neovide.desktop +++ b/tasks/Linux/files/neovide/neovide.desktop @@ -3,6 +3,6 @@ Encoding=UTF-8 Version=1.0 Type=Application Terminal=false -Exec=/usr/local/bin/neovide +Exec={{ _neovide.install_prefix }}/bin/neovide Name=Neovide -Icon=/usr/share/icons/neovide.png +Icon={{ _neovide.install_prefix }}/share/icons/neovide.png diff --git a/tasks/Linux/gitea.yml b/tasks/Linux/gitea.yml deleted file mode 100644 index 9aca480..0000000 --- a/tasks/Linux/gitea.yml +++ /dev/null @@ -1,128 +0,0 @@ ---- -- name: ensure gitea user exists - become: true - ansible.builtin.user: - comment: gitea user - home: /var/lib/gitea - create_home: false - group: git - name: git - state: present - system: true - -- name: install gitea binary - become: true - ansible.builtin.get_url: - backup: true - checksum: "sha256:https://dl.gitea.com/gitea/1.22.2/gitea-1.22.2-linux-amd64.sha256" - decompress: false - dest: /usr/local/bin/gitea - mode: '755' - url: https://dl.gitea.com/gitea/1.22.2/gitea-1.22.2-linux-amd64 - state: present - -- name: ensure gitea paths exist - become: true - ansible.builtin.file: - group: git - owner: git - mode: '750' - path: '{{ item }}' - state: directory - loop: - - /var/lib/gitea - - /var/lib/gitea/custom - - /var/lib/gitea/data - - /var/lib/gitea/log - -- name: ensure gitea configuration directory exists - become: true - ansible.builtin.file: - group: git - owner: root - mode: '750' - path: /etc/gitea - state: directory - -- name: install gitea configuration - become: true - ansible.builtin.template: - backup: true - group: git - owner: root - mode: '640' - dest: /etc/gitea/app.ini - src: gitea/app.ini.j2 - vars: - # global settings - app_name: 'Gitea: Git with a cup of tea' - run_mode: prod - workpath: /var/lib/gitea - # repository settings - repository_default_branch: main - repository_disable_http_git: false - repository_enable_push_create_user: true - # server settings - server_allow_graceful_restarts: true - server_app_data_path: '' - server_domain: git.staur.ca - server_enable_gzip: true - server_enable_pprof: false - server_graceful_hammer_time: 1m0s - server_http_addr: 0.0.0.0 - server_landing_page: home - server_lfs_jwt_secret: dvyUMJ81VjfO_PuHJt_4W-b6S58-yU2oMfF0N8KqzNg - server_lfs_start_server: true - server_local_use_proxy: false - server_minimum_key_size_check: true - server_offline_mode: false - server_per_write_kb_timeout: 10s - server_per_write_timeout: 30s - server_port: 3000 - server_protocol: http - server_proxy_protocol_accept_unknown: false - server_proxy_protocol_tls_bridging: false - server_redirector_use_proxy_protocol: false - server_ssh_domain: gitea.applications.staur.ca - server_ssh_listen_port: 22 - server_ssh_port: 22 - server_startup_timeout: 0s - server_static_cache_time: 1h0m0s - server_static_root_path: /data - server_use_proxy_protocol: false - sever_proxy_protocol_header_timeout: 5s - # database settings - database_host: postgres01.applications.staur.ca - database_log_sql: false - database_name: gitea - database_passwd: gitea - database_ssl_mode: disable - database_type: postgres - database_user: gitea - # session settings - session_cookie_name: gitea_session - session_cookie_secure: true - session_provider: db - session_provider_config: /sessions - # security settings - security_secret_key: L2tOg455yeumJDDUEdw1ma69ckdoKP1UMgVZ9bXJZkCKkhCjfQmngYXDllUzdTKG - security_internal_token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE2OTM2MjA3NDh9.NCqR3b7ZHTwTcGky9FtSEii4ams2rG3Y06Iqvorc65Y - # service settings - service_disable_registration: true - service_require_signin_view: false - service_enable_captcha: false - service_register_email_confirm: true - service_no_reply_address: noreply+git@stobbs.ca - service_default_keep_email_private: true - service_default_enable_timetracking: true - service_allow_only_external_registration: false - service_allow_enable_notify_mail: false - service_default_allow_create_oranization: true - # lfs minio settings - lfs_minio_access_key_id: jvafijdsllesb5cuoj2s7eqe7zpq - lfs_minio_bucket: git-lfs-stobbs-ca - lfs_minio_endpoint: gateway.storjshare.io - lfs_minio_location: ca-central-1 - lfs_minio_secret_access_key: jzl5ehrxpklz37cdafetar2ihcdldgfadpv5g5udsih7ujf6s2lq6 - mailer_passwd: - mailer_protocol: diff --git a/tasks/Linux/go.yml b/tasks/Linux/go.yml index b49520c..cd841fe 100644 --- a/tasks/Linux/go.yml +++ b/tasks/Linux/go.yml @@ -1,41 +1,42 @@ --- -- name: Set go Filename +- name: set go arch ansible.builtin.set_fact: - goFilename: "go{{ go.version }}.linux-{{ arch[ansible_architecture] }}.{{ go.linux.extension }}" + arch: "{{ _go.archmap[ansible_architecture] }}" + +- name: set go Filename + ansible.builtin.set_fact: + goFilename: "go{{ versions.go }}.linux-{{ arch }}.tar.gz" tags: - dev - go - debug -- name: Download latest go package for linux +- name: create temp path + ansible.builtin.tempfile: + state: directory + prefix: go_dl. + register: d_go_dl_tmp + +- name: download go archive become: true ansible.builtin.get_url: - dest: "/tmp/{{ goFilename }}" + dest: "{{ d_go_dl_tmp }}/{{ goFilename }}" url: "https://go.dev/dl/{{ goFilename }}" - checksum: "sha256:{{ go.linux.sum[ansible_architecture] }}" + checksum: "{{ _go[versions.go].Linux[arch] }}" decompress: false tags: - dev - go -- name: Ensure go install dir exists +- name: ensure go install dir exists become: true ansible.builtin.file: - path: /usr/local + path: "{{ _go.install_path }}" state: directory -- name: Extract go package for Linux +- name: extract go package for Linux become: true ansible.builtin.unarchive: - dest: /usr/local - src: "/tmp/{{ goFilename }}" + dest: "{{ _go.install_path }}" + src: "{{ d_go_dl_tmp.path }}/{{ goFilename }}" remote_src: true - -- name: Cleanup go package download - become: true - ansible.builtin.file: - path: "/tmp/{{ goFilename }}" - state: absent - tags: - - dev - - go diff --git a/tasks/Linux/neovide.yml b/tasks/Linux/neovide.yml index d58767d..77bb761 100644 --- a/tasks/Linux/neovide.yml +++ b/tasks/Linux/neovide.yml @@ -1,17 +1,17 @@ --- -- name: Build and install neovide +- name: build and install neovide become: true ansible.builtin.command: - cmd: cargo install --root /usr/local --git https://github.com/neovide/neovide + cmd: "cargo install --root {{ _neovide.install_prefix }} --git https://github.com/neovide/neovide" - name: Copy neovide icon become: true ansible.builtin.copy: src: neovide/icon.png - dest: /usr/share/icons/neovide.png + dest: "{{ _neovide.install_prefix }}/share/icons/neovide.png" - name: Copy neovide.desktop become: true - ansible.builtin.copy: + ansible.builtin.templatefile: src: neovide/neovide.desktop - dest: /usr/local/share/applications/neovide.desktop + dest: "{{ _neovide.install_prefix }}/share/applications/neovide.desktop" diff --git a/tasks/Linux/nerdfonts.yml b/tasks/Linux/nerdfonts.yml index be54f96..3390387 100644 --- a/tasks/Linux/nerdfonts.yml +++ b/tasks/Linux/nerdfonts.yml @@ -1,22 +1,33 @@ # Install nerdfonts for each platform --- -- name: Create nerdfonts directories +- name: set install path for non-system installs + ansible.builtin.set_fact: + nerdfont_install_path: "{{ lookup('ansible.builtin.env', 'HOME') }}/.local/share/fonts" + when: not nerdfonts_system_install + +- name: set install path for system wide installs + ansible.builtin.set_fact: + nerdfont_install_path: "/usr/local/share/fonts" + when: nerdfonts_system_install + +- name: create nerdfonts directories + ansible.builtin.file: + path: "{{ nerdfonts_install_path }}/{{ font.name }}" + state: directory + become: nerdfonts_system_install loop: "{{ nerdfonts }}" loop_control: loop_var: font - ansible.builtin.file: - path: "{{ lookup('ansible.builtin.env', 'HOME') }}/.local/share/fonts/{{ font.name }}" - state: directory register: nerdfont_result - name: Download and extract nerdfonts + ansible.builtin.unarchive: + creates: "{{ nerdfont_install_path }}/{{ font.name }}/README.md" + src: "https://github.com/ryanoasis/nerd-fonts/releases/latest/download/{{ font.name }}.tar.xz" + dest: "{{ nerdfont_install_path }}/{{ font.name }}" + remote_src: true when: nerdfont_result is changed + become: nerdfonts_system_install loop: "{{ nerdfonts }}" loop_control: loop_var: font - ansible.builtin.unarchive: - creates: "{{ lookup('ansible.builtin.env', 'HOME') }}/.local/share/fonts/{{ font.name }}/README.md" - src: "https://github.com/ryanoasis/nerd-fonts/releases/latest/download/{{ font.name }}.tar.xz" - dest: "{{ lookup('ansible.builtin.env', 'HOME') }}/.local/share/fonts/{{ font.name }}" - remote_src: true - diff --git a/tasks/Linux/nushell.yml b/tasks/Linux/nushell.yml index 05498fe..699bc5c 100644 --- a/tasks/Linux/nushell.yml +++ b/tasks/Linux/nushell.yml @@ -2,7 +2,7 @@ - name: install nushell via cargo become: true ansible.builtin.command: - cmd: "cargo install --root /usr/local {{ nuitem }} --locked" + cmd: "cargo install --root {{ _nushell.install_prefix }} {{ nuitem }} --locked" loop_control: loop_var: nuitem loop: diff --git a/tasks/Linux/zig.yml b/tasks/Linux/zig.yml new file mode 100644 index 0000000..b4ce7c2 --- /dev/null +++ b/tasks/Linux/zig.yml @@ -0,0 +1,16 @@ +--- +- name: download zig archive + ansible.builtin.set_fact: + zig_pkg: "zig-linux-{{ ansible_archtecture }}-{{ versions.zig }}.tar.xz" + +- name: create temp path + ansible.builtin.tempfile: + state: directory + prefix: zig_dl. + register: d_zig_dl_tmp + +- name: download zig archive + ansible.builtin.get_url: + dest: "{{ d_zig_dl_tmp.path }}/{{ zig_pkg }}" + url: "{{ _zig.base_url }}/{{ zig_pkg }}" + decompress: false diff --git a/tasks/RedHat/alacritty.yml b/tasks/RedHat/alacritty.yml index bdef7c7..bbd2003 100644 --- a/tasks/RedHat/alacritty.yml +++ b/tasks/RedHat/alacritty.yml @@ -1,7 +1,7 @@ --- - name: install rust and cargo ansible.builtin.include_tasks: - file: "packages/{{ ansible_os_family }}/rust.yml" + file: "{{ ansible_os_family }}/rust.yml" tags: - rust - dependency @@ -18,8 +18,8 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + alacritty_deps }}" - altpkgs: "{{ (altpkgs | default([])) + [ 'packages/Linux/alacritty.yml' ] }}" + syspkgs: "{{ syspkgs + alacritty_deps }}" + altpkgs: "{{ altpkgs + [ 'Linux/alacritty.yml' ] }}" tags: - syspkgs - altpkgs diff --git a/tasks/RedHat/ansible.yml b/tasks/RedHat/ansible.yml index 80be3b7..34d8bba 100644 --- a/tasks/RedHat/ansible.yml +++ b/tasks/RedHat/ansible.yml @@ -3,5 +3,5 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'ansible' ] }}" + syspkgs: "{{ (syspkgs + [ 'ansible' ] }}" diff --git a/tasks/RedHat/btop.yml b/tasks/RedHat/btop.yml index ce57fc8..571f07f 100644 --- a/tasks/RedHat/btop.yml +++ b/tasks/RedHat/btop.yml @@ -1,5 +1,5 @@ --- - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'btop' ] }}" + syspkgs: "{{ syspkgs + [ 'btop' ] }}" diff --git a/tasks/RedHat/carapace.yml b/tasks/RedHat/carapace.yml index 37d85fa..d2d4822 100644 --- a/tasks/RedHat/carapace.yml +++ b/tasks/RedHat/carapace.yml @@ -2,6 +2,6 @@ - name: install carapace RPM become: true ansible.builtin.dnf: - name: https://github.com/carapace-sh/carapace-bin/releases/download/v1.0.7/carapace-bin_1.0.7_linux_amd64.rpm + name: "{{ _ghbase }}/carapace-sh/carapace-bin/releases/download/v{{ carapace_version }}/carapace-bin_{{ carapace_version }}_linux_amd64.rpm" state: present disable_gpg_check: true diff --git a/tasks/RedHat/cmake.yml b/tasks/RedHat/cmake.yml index b652ac3..02dda2b 100644 --- a/tasks/RedHat/cmake.yml +++ b/tasks/RedHat/cmake.yml @@ -1,7 +1,7 @@ --- - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'cmake' ] }}" + syspkgs: "{{ syspkgs + [ 'cmake' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/consul.yml b/tasks/RedHat/consul.yml index 8a9285c..15d64cb 100644 --- a/tasks/RedHat/consul.yml +++ b/tasks/RedHat/consul.yml @@ -1,9 +1,9 @@ --- - name: ensure hashicorp repo is active ansible.builtin.include_tasks: - file: packages/{{ ansible_os_family }}/hashicorp_repo.yml + file: "{{ ansible_os_family }}/hashicorp_repo.yml" - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'consul' ] }}" + syspkgs: "{{ (syspkgs + [ 'consul' ] }}" diff --git a/tasks/RedHat/editorconfig.yml b/tasks/RedHat/editorconfig.yml index 1da3333..b5e2623 100644 --- a/tasks/RedHat/editorconfig.yml +++ b/tasks/RedHat/editorconfig.yml @@ -1,7 +1,7 @@ --- - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'editorconfig' ] }}" + syspkgs: "{{ syspkgs + [ 'editorconfig' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/firefox.yml b/tasks/RedHat/firefox.yml index 7716398..0ead138 100644 --- a/tasks/RedHat/firefox.yml +++ b/tasks/RedHat/firefox.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'firefox' ] }}" + syspkgs: "{{ syspkgs + [ 'firefox' ] }}" tags: - packages - RedHat diff --git a/tasks/RedHat/fzf.yml b/tasks/RedHat/fzf.yml index 421766a..a68a047 100644 --- a/tasks/RedHat/fzf.yml +++ b/tasks/RedHat/fzf.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'fzf' ] }}" + syspkgs: "{{ syspkgs + [ 'fzf' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/ghostty.yml b/tasks/RedHat/ghostty.yml index 845b481..11753ce 100644 --- a/tasks/RedHat/ghostty.yml +++ b/tasks/RedHat/ghostty.yml @@ -10,6 +10,6 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'ghostty' ] }}" + syspkgs: "{{ syspkgs + [ 'ghostty' ] }}" tags: - syspkgs diff --git a/tasks/RedHat/git.yml b/tasks/RedHat/git.yml index 564a07c..8634f42 100644 --- a/tasks/RedHat/git.yml +++ b/tasks/RedHat/git.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'git', 'git-delta', 'git-email', 'git-lfs' ] }}" + syspkgs: "{{ syspkgs + [ 'git', 'git-delta', 'git-email', 'git-lfs' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/go.yml b/tasks/RedHat/go.yml index 24d0866..4607b93 100644 --- a/tasks/RedHat/go.yml +++ b/tasks/RedHat/go.yml @@ -2,4 +2,4 @@ - name: append to pkgs set_fact: - altpkgs: "{{ (altpkgs | default([])) + [ 'packages/Linux/go.yml' ] }}" + altpkgs: "{{ altpkgs + [ 'packages/Linux/go.yml' ] }}" diff --git a/tasks/RedHat/hugo.yml b/tasks/RedHat/hugo.yml index c36e354..764cfa5 100644 --- a/tasks/RedHat/hugo.yml +++ b/tasks/RedHat/hugo.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'hugo' ] }}" + syspkgs: "{{ syspkgs + [ 'hugo' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/jq.yml b/tasks/RedHat/jq.yml index e7ef2e9..9a38d88 100644 --- a/tasks/RedHat/jq.yml +++ b/tasks/RedHat/jq.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'jq' ] }}" + syspkgs: "{{ syspkgs + [ 'jq' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/konsole.yml b/tasks/RedHat/konsole.yml index 92f5269..d19b56d 100644 --- a/tasks/RedHat/konsole.yml +++ b/tasks/RedHat/konsole.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'konsole' ] }}" + syspkgs: "{{ syspkgs + [ 'konsole' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/neovide.yml b/tasks/RedHat/neovide.yml index b4337d9..361d174 100644 --- a/tasks/RedHat/neovide.yml +++ b/tasks/RedHat/neovide.yml @@ -15,5 +15,5 @@ - name: append to pkgs when: ansible_architecture != "aarch64" set_fact: - syspkgs: "{{ (syspkgs | default([])) + neovide_deps }}" - altpkgs: "{{ (altpkgs | default([])) + [ 'packages/Linux/neovide.yml' ] }}" + syspkgs: "{{ syspkgs + neovide_deps }}" + altpkgs: "{{ altpkgs + [ 'Linux/neovide.yml' ] }}" diff --git a/tasks/RedHat/neovim.yml b/tasks/RedHat/neovim.yml index ae932dd..cb1122f 100644 --- a/tasks/RedHat/neovim.yml +++ b/tasks/RedHat/neovim.yml @@ -2,13 +2,13 @@ - name: append to pkgs when: ansible_distribution == "Fedora" set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'neovim', 'python3-neovim' ] }}" + syspkgs: "{{ syspkgs + [ 'neovim', 'python3-neovim' ] }}" tags: - RedHat - linux - package -- name: Install neovim appimage +- name: install neovim appimage when: ansible_distribution != "Fedora" become: true ansible.builtin.get_url: diff --git a/tasks/RedHat/nerdfonts.yml b/tasks/RedHat/nerdfonts.yml index 2d60161..5e9fa72 100644 --- a/tasks/RedHat/nerdfonts.yml +++ b/tasks/RedHat/nerdfonts.yml @@ -1,4 +1,4 @@ --- - name: append to pkgs set_fact: - altpkgs: "{{ (altpkgs | default([])) + [ 'packages/Linux/nerdfonts.yml' ] }}" + altpkgs: "{{ altpkgs + [ 'Linux/nerdfonts.yml' ] }}" diff --git a/tasks/RedHat/nodejs.yml b/tasks/RedHat/nodejs.yml index da4b6d9..88e8acd 100644 --- a/tasks/RedHat/nodejs.yml +++ b/tasks/RedHat/nodejs.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'nodejs', 'npm' ] }}" + syspkgs: "{{ syspkgs + [ 'nodejs', 'npm' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/nomad.yml b/tasks/RedHat/nomad.yml index 750fa19..af76c25 100644 --- a/tasks/RedHat/nomad.yml +++ b/tasks/RedHat/nomad.yml @@ -1,9 +1,9 @@ --- - name: ensure hashicorp repo is active ansible.builtin.include_tasks: - file: packages/{{ ansible_os_family }}/hashicorp_repo.yml + file: "{{ ansible_os_family }}/hashicorp_repo.yml" - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'nomad' ] }}" + syspkgs: "{{ syspkgs + [ 'nomad' ] }}" diff --git a/tasks/RedHat/nushell.yml b/tasks/RedHat/nushell.yml index 927d084..e6a5088 100644 --- a/tasks/RedHat/nushell.yml +++ b/tasks/RedHat/nushell.yml @@ -7,10 +7,10 @@ - openssl-devel - libX11-devel nushell_altdeps: - - packages/Linux/nushell.yml - - packages/{{ ansible_os_family }}/carapace.yml + - Linux/nushell.yml + - "{{ ansible_os_family }}/carapace.yml" - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + nushell_pkgdeps }}" - altpkgs: "{{ (altpkgs | default([])) + nushell_altdeps }}" + syspkgs: "{{ syspkgs + nushell_pkgdeps }}" + altpkgs: "{{ altpkgs + nushell_altdeps }}" diff --git a/tasks/RedHat/packer.yml b/tasks/RedHat/packer.yml index 70f3fa4..777167c 100644 --- a/tasks/RedHat/packer.yml +++ b/tasks/RedHat/packer.yml @@ -1,8 +1,8 @@ --- - name: ensure hashicorp repo is active ansible.builtin.include_tasks: - file: packages/{{ ansible_os_family }}/hashicorp_repo.yml + file: "{{ ansible_os_family }}/hashicorp_repo.yml" - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'packer' ] }}" + syspkgs: "{{ syspkgs + [ 'packer' ] }}" diff --git a/tasks/RedHat/pandoc.yml b/tasks/RedHat/pandoc.yml index 5fadb3b..9f3c3b8 100644 --- a/tasks/RedHat/pandoc.yml +++ b/tasks/RedHat/pandoc.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'pandoc' ] }}" + syspkgs: "{{ syspkgs + [ 'pandoc' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/pipx.yml b/tasks/RedHat/pipx.yml index ff6ef40..77c48a1 100644 --- a/tasks/RedHat/pipx.yml +++ b/tasks/RedHat/pipx.yml @@ -1,7 +1,7 @@ --- - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'pipx' ] }}" + syspkgs: "{{ syspkgs + [ 'pipx' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/python3-pip.yml b/tasks/RedHat/python3-pip.yml index 5b0664f..29a4009 100644 --- a/tasks/RedHat/python3-pip.yml +++ b/tasks/RedHat/python3-pip.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'python3-pip' ] }}" + syspkgs: "{{ syspkgs + [ 'python3-pip' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/ripgrep.yml b/tasks/RedHat/ripgrep.yml index ecd6c26..9a907f6 100644 --- a/tasks/RedHat/ripgrep.yml +++ b/tasks/RedHat/ripgrep.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'ripgrep' ] }}" + syspkgs: "{{ syspkgs + [ 'ripgrep' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/rust.yml b/tasks/RedHat/rust.yml index df1cc4f..810d54d 100644 --- a/tasks/RedHat/rust.yml +++ b/tasks/RedHat/rust.yml @@ -6,7 +6,7 @@ - cargo - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + rust_pkgs }}" + syspkgs: "{{ syspkgs + rust_pkgs }}" tags: - RedHat - linux diff --git a/tasks/RedHat/stow.yml b/tasks/RedHat/stow.yml index f731135..e66719c 100644 --- a/tasks/RedHat/stow.yml +++ b/tasks/RedHat/stow.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'stow' ] }}" + syspkgs: "{{ syspkgs + [ 'stow' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/terminal.yml b/tasks/RedHat/terminal.yml deleted file mode 100644 index a24c243..0000000 --- a/tasks/RedHat/terminal.yml +++ /dev/null @@ -1,12 +0,0 @@ ---- - -# default on Linux is alacritty -# edit config/users.yml:users::terminal:os_name:package name -# ie: config/users.yml:users:[name: stobbsm]:terminal:Fedora:konsole -- name: install and configure system terminal emulator - loop: "{{ users }}" - ansible.builtin.include_tasks: - file: "packages/{{ ansible_os_family }}/{{ item.terminal[ansible_distribution] | default('alacritty') }}.yml" - tags: - - package - - RedHat diff --git a/tasks/RedHat/terraform.yml b/tasks/RedHat/terraform.yml index 7ecd657..93a805c 100644 --- a/tasks/RedHat/terraform.yml +++ b/tasks/RedHat/terraform.yml @@ -1,8 +1,8 @@ --- - name: ensure hashicorp repo is active ansible.builtin.include_tasks: - file: packages/{{ ansible_os_family }}/hashicorp_repo.yml + file: "{{ ansible_os_family }}/hashicorp_repo.yml" - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'terraform' ] }}" + syspkgs: "{{ syspkgs + [ 'terraform' ] }}" diff --git a/tasks/RedHat/tidy.yml b/tasks/RedHat/tidy.yml index d223079..222e909 100644 --- a/tasks/RedHat/tidy.yml +++ b/tasks/RedHat/tidy.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'tidy' ] }}" + syspkgs: "{{ syspkgs + [ 'tidy' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/tmux.yml b/tasks/RedHat/tmux.yml index b574459..81e73f4 100644 --- a/tasks/RedHat/tmux.yml +++ b/tasks/RedHat/tmux.yml @@ -2,7 +2,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'tmux' ] }}" + syspkgs: "{{ syspkgs + [ 'tmux' ] }}" tags: - RedHat - linux diff --git a/tasks/RedHat/vault.yml b/tasks/RedHat/vault.yml index d68eb60..76b1935 100644 --- a/tasks/RedHat/vault.yml +++ b/tasks/RedHat/vault.yml @@ -2,8 +2,8 @@ --- - name: ensure hashicorp repo is active ansible.builtin.include_tasks: - file: packages/{{ ansible_os_family }}/hashicorp_repo.yml + file: "{{ ansible_os_family }}/hashicorp_repo.yml" - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'vault' ] }}" + syspkgs: "{{ syspkgs + [ 'vault' ] }}" diff --git a/tasks/RedHat/vivaldi.yml b/tasks/RedHat/vivaldi.yml deleted file mode 100644 index 3dc071f..0000000 --- a/tasks/RedHat/vivaldi.yml +++ /dev/null @@ -1,14 +0,0 @@ ---- -- name: Configure RPM Repository - become: true - ansible.builtin.yum_repository: - name: vivaldi - baseurl: "https://repo.vivaldi.com/archive/rpm/{{ ansible_architecture }}" - description: vivaldi browser - gpgcheck: true - gpgkey: https://repo.vivaldi.com/archive/linux_signing_key.pub - state: present - -- name: append to pkgs - set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'vivaldi-stable' ] }}" diff --git a/tasks/RedHat/zfs.yml b/tasks/RedHat/zfs.yml index 8f30d1d..b002d6c 100644 --- a/tasks/RedHat/zfs.yml +++ b/tasks/RedHat/zfs.yml @@ -58,7 +58,7 @@ - name: append to pkgs set_fact: - syspkgs: "{{ (syspkgs | default([])) + [ 'zfs' ] }}" + syspkgs: "{{ syspkgs + [ 'zfs' ] }}" become: true tags: - RedHat diff --git a/tasks/RedHat/zoxide.yml b/tasks/RedHat/zoxide.yml index 53dec2e..3a1c333 100644 --- a/tasks/RedHat/zoxide.yml +++ b/tasks/RedHat/zoxide.yml @@ -14,4 +14,3 @@ - RedHat - linux - package - diff --git a/vars/main.yml b/vars/main.yml index 851d821..5590d3d 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -1,7 +1,48 @@ # variables used in ansible_role_package --- +nerdfonts: + - name: CascadiaCode + brew: caskaydia-cove + - name: FiraCode + brew: fira-code + - name: Hasklig + brew: hasklug + - name: Lilex + brew: lilex + - name: Monoid + brew: monoid + - name: NerdFontsSymbolsOnly + brew: symbols-only +nerdfonts_system_install: false packages: [] syspkgs: [] altpkgs: [] install_state: present full_upgrade: false +_ghbase: "https://github.com" +# version of packages to install when altpkgs +versions: + - alacritty: 0.15.0 + - carapace: 1.1.1 + - go: 1.23.5 + - neovim: v0.10.3 + - zig: 0.13.0 +_go: + install_path: /usr/local + archmap: + aarch64: arm64 + x86_64: amd64 + 1.23.5: + Darwin: + arm64: sha256:f819ed94939e08a5016b9a607ec84ebbde6cb3fe59750c59d97aa300c3fd02df + amd64: sha256:d2b06bf0b8299e0187dfe2d8ad39bd3dd96a6d93fe4d1cfd42c7872452f4a0a2 + Linux: + amd64: sha256:cbcad4a6482107c7c7926df1608106c189417163428200ce357695cc7e01d091 + arm64: sha256:47c84d332123883653b70da2db7dd57d2a865921ba4724efcdf56b5da7021db0 +_neovide: + install_prefix: /usr/local +_nushell: + install_prefix: /usr/local +_zig: + install_path: /usr/local + base_url: https://ziglang.org/download