configuring more packages
This commit is contained in:
@@ -1,8 +1,4 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: alacritty.yml
|
||||
name: _alacritty
|
||||
|
||||
- name: build and install alacritty
|
||||
become: true
|
||||
ansible.builtin.command:
|
||||
|
||||
2
tasks/build/ghostty.yml
Normal file
2
tasks/build/ghostty.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
|
||||
@@ -1,33 +1,36 @@
|
||||
# Install nerdfonts for each platform
|
||||
---
|
||||
- name: set install path for non-system installs
|
||||
- name: linux installation
|
||||
when: ansible_system == 'Linux'
|
||||
block:
|
||||
- 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
|
||||
nerdfonts_install_path: "{{ lookup('ansible.builtin.env', 'HOME') }}/.local/share/fonts"
|
||||
when: not _nerdfonts.nerdfonts_system_install
|
||||
|
||||
- name: set install path for system wide installs
|
||||
- name: set install path for system wide installs
|
||||
ansible.builtin.set_fact:
|
||||
nerdfont_install_path: "/usr/local/share/fonts"
|
||||
when: nerdfonts_system_install
|
||||
nerdfonts_install_path: "/usr/local/share/fonts"
|
||||
when: _nerdfonts.nerdfonts_system_install
|
||||
|
||||
- name: create nerdfonts directories
|
||||
- name: create nerdfonts directories
|
||||
ansible.builtin.file:
|
||||
path: "{{ nerdfonts_install_path }}/{{ font.name }}"
|
||||
state: directory
|
||||
become: nerdfonts_system_install
|
||||
become: "{{ _nerdfonts.nerdfonts_system_install }}"
|
||||
loop: "{{ nerdfonts }}"
|
||||
loop_control:
|
||||
loop_var: font
|
||||
register: nerdfont_result
|
||||
|
||||
- name: Download and extract nerdfonts
|
||||
- name: Download and extract nerdfonts
|
||||
ansible.builtin.unarchive:
|
||||
creates: "{{ nerdfont_install_path }}/{{ font.name }}/README.md"
|
||||
creates: "{{ nerdfonts_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 }}"
|
||||
dest: "{{ nerdfonts_install_path }}/{{ font.name }}"
|
||||
remote_src: true
|
||||
when: nerdfont_result is changed
|
||||
become: nerdfonts_system_install
|
||||
loop: "{{ nerdfonts }}"
|
||||
loop: "{{ _nerdfonts.fonts }}"
|
||||
loop_control:
|
||||
loop_var: font
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
- name: append alacritty to caskpkgs
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'alacritty' ] }}"
|
||||
tags:
|
||||
- MacOS
|
||||
- brew
|
||||
- package
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
- name: append ansible to syspkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'ansible' ]}}"
|
||||
tags:
|
||||
- MacOS
|
||||
- homebrew
|
||||
- package
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
- name: append btop to syspkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'btop' ]}}"
|
||||
tags:
|
||||
- MacOS
|
||||
- brew
|
||||
- package
|
||||
@@ -1,13 +0,0 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: carapace.yml
|
||||
name: _carapace
|
||||
|
||||
- name: append carapace to syspkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'carapace' ] }}"
|
||||
tags:
|
||||
- MacOS
|
||||
- homebrew
|
||||
- package
|
||||
- nushell
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
- name: append cmake to caskpkgs
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'homebrew/cask/cmake' ] }}"
|
||||
tags:
|
||||
- MacOS
|
||||
- homebrew
|
||||
- package
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
- name: append editorconfig to syspkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'editorconfig' ]}}"
|
||||
tags:
|
||||
- MacOS
|
||||
- homebrew
|
||||
- package
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
- name: append firefox to caskpkgs
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'firefox' ] }}"
|
||||
tags:
|
||||
- packages
|
||||
- MacOS
|
||||
- homebrew
|
||||
- web
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
- name: append fzf to syspkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'fzf' ]}}"
|
||||
tags:
|
||||
- MacOS
|
||||
- homebrew
|
||||
- package
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
- name: append ghostty to caskpkgs
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'ghostty' ] }}"
|
||||
tags:
|
||||
- MacOS
|
||||
- brew
|
||||
- package
|
||||
- terminal
|
||||
@@ -1,20 +0,0 @@
|
||||
---
|
||||
- name: set git_pkgs
|
||||
set_fact:
|
||||
git_pkgs:
|
||||
- git
|
||||
- git-delta
|
||||
- git-extras
|
||||
- git-lfs
|
||||
tags:
|
||||
- MacOS
|
||||
- homebrew
|
||||
- package
|
||||
|
||||
- name: append git to syspkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + git_pkgs }}"
|
||||
tags:
|
||||
- MacOS
|
||||
- homebrew
|
||||
- package
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
- name: append hugo to syspkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'hugo' ]}}"
|
||||
tags:
|
||||
- MacOS
|
||||
- homebrew
|
||||
- package
|
||||
@@ -1,23 +0,0 @@
|
||||
---
|
||||
- name: install rust and cargo
|
||||
ansible.builtin.include_tasks:
|
||||
file: "pkgs/{{ ansible_os_family }}/rust.yml"
|
||||
tags:
|
||||
- rust
|
||||
- dependency
|
||||
|
||||
- name: install alacritty dependencies for Debian based distributions
|
||||
ansible.builtin.set_fact:
|
||||
alacritty_deps:
|
||||
- cmake
|
||||
- pkg-config
|
||||
- libfreetype6-dev
|
||||
- libfontconfig1-dev
|
||||
- libxcb-xfixes0-dev
|
||||
- libxkbcommon-dev
|
||||
- python3
|
||||
|
||||
- name: add to pkgs
|
||||
ansible.builtin.set_fact:
|
||||
syspkgs: "{{ syspkgs + alacritty_deps }}"
|
||||
srcpkgs: "{{ srcpkgs + ['build/alacritty.yml'] }}"
|
||||
@@ -1,7 +0,0 @@
|
||||
# Install ansible for current platform
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ (syspkgs + [ 'ansible' ] }}"
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
---
|
||||
- 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' ] }}"
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
- 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' ] }}"
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'firefox' ] }}"
|
||||
tags:
|
||||
- packages
|
||||
- RedHat
|
||||
- web
|
||||
@@ -1,10 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'fzf' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
---
|
||||
- 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
|
||||
@@ -1,10 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'git', 'git-delta', 'git-email', 'git-lfs' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
---
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
srcpkgs: "{{ srcpkgs + [ 'build/go.yml' ] }}"
|
||||
@@ -1,27 +0,0 @@
|
||||
# install hashicorp vault for Debian/Ubuntu
|
||||
---
|
||||
- ansible.builtin.tempfile:
|
||||
state: directory
|
||||
prefix: hashicorp.
|
||||
register: d_hashicorp_tmp
|
||||
|
||||
- name: get hashicorp archive gpg key
|
||||
ansible.built.get_url:
|
||||
dest: "{{ d_hashicorp_tmp.path }}/gpg"
|
||||
url: https://apt.releases.hashicorp.com/gpg
|
||||
|
||||
- name: install hashicorp archive gpg key
|
||||
become: true
|
||||
ansible.builtin.command:
|
||||
cmd:
|
||||
- gpg
|
||||
- --dearmor
|
||||
- -o
|
||||
- /usr/share/keyrings/hashicorp-archive-keyring.gpg
|
||||
- "{{ d_hashicorp_tmp.path }}/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
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'konsole' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
@@ -1,4 +1,4 @@
|
||||
---
|
||||
- name: append to pkgs
|
||||
- name: append to srcpkgs
|
||||
set_fact:
|
||||
srcpkgs: "{{ srcpkgs + [ 'Linux/nerdfonts.yml' ] }}"
|
||||
srcpkgs: "{{ srcpkgs + [ 'nerdfonts' ] }}"
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
---
|
||||
- name: install rust and cargo
|
||||
ansible.builtin.include_tasks:
|
||||
file: "pkgs/{{ ansible_os_family }}/rust.yml"
|
||||
tags:
|
||||
- rust
|
||||
- dependency
|
||||
|
||||
- name: set alacritty pkg deps
|
||||
set_fact:
|
||||
alacritty_deps:
|
||||
- cmake
|
||||
- freetype-devel
|
||||
- fontconfig-devel
|
||||
- libxcb-devel
|
||||
- libxkbcommon-devel
|
||||
- g++
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + alacritty_deps }}"
|
||||
srcpkgs: "{{ srcpkgs + [ 'build/alacritty.yml' ] }}"
|
||||
tags:
|
||||
- syspkgs
|
||||
- srcpkgs
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'btop' ] }}"
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: carapace.yml
|
||||
name: _carapace
|
||||
|
||||
- name: install carapace RPM
|
||||
become: true
|
||||
ansible.builtin.dnf:
|
||||
name: "{{ _ghbase }}/carapace-sh/carapace-bin/releases/download/v{{ _carapace.version }}/carapace-bin_{{ _carapace.version }}_linux_amd64.rpm"
|
||||
state: "{{ install_state }}"
|
||||
disable_gpg_check: true
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'cmake' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
- name: ensure hashicorp repo is active
|
||||
ansible.builtin.include_tasks:
|
||||
file: "pkgs/{{ ansible_os_family }}/hashicorp_repo.yml"
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ (syspkgs + [ 'consul' ] }}"
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'editorconfig' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'firefox' ] }}"
|
||||
tags:
|
||||
- packages
|
||||
- RedHat
|
||||
- web
|
||||
@@ -1,15 +0,0 @@
|
||||
---
|
||||
- name: ensure dependencies
|
||||
ansible.builtin.include_tasks:
|
||||
file: "pkgs/{{ ansible_os_family }}/terra_repo.yml"
|
||||
tags:
|
||||
- dependency
|
||||
- package
|
||||
- terra
|
||||
- syspkgs
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'ghostty' ] }}"
|
||||
tags:
|
||||
- syspkgs
|
||||
@@ -1,10 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'git', 'git-delta', 'git-email', 'git-lfs' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
---
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
srcpkgs: "{{ srcpkgs + [ 'build/go.yml' ] }}"
|
||||
@@ -1,27 +0,0 @@
|
||||
# install hashicorp vault for RedHat
|
||||
---
|
||||
- name: enable hashicorp repo for fedora >=41
|
||||
become: true
|
||||
when:
|
||||
- ansible_distribution == 'Fedora'
|
||||
- ansible_distribution_major_version|int >= 41
|
||||
ansible.builtin.command:
|
||||
creates: /etc/yum.repos.d/hashicorp.repo
|
||||
cmd: dnf config-manager addrepo --from-repofile=https://rpm.releases.hashicorp.com/fedora/hashicorp.repo
|
||||
|
||||
- name: enable hashicorp repo for fedora <41
|
||||
become: true
|
||||
when:
|
||||
- ansible_distribution == 'Fedora'
|
||||
- ansible_distribution_major_version|int < 41
|
||||
ansible.builtin.command:
|
||||
creates: /etc/yum.repos.d/hashicorp.repo
|
||||
cmd: dnf config-manager --add-repo https://rpm.releases.hashicorp.com/fedora/hashicorp.repo
|
||||
|
||||
- name: enable hashicorp repo for RHEL like distribution
|
||||
become: true
|
||||
when:
|
||||
- ansible_distribution != 'Fedora'
|
||||
ansible.builtin.command:
|
||||
creates: /etc/yum.repos.d/hashicorp.repo
|
||||
cmd: dnf config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
|
||||
@@ -1,10 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'hugo' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'jq' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
---
|
||||
- name: add to syspkgs
|
||||
ansible.builtin.set_fact:
|
||||
syspkgs: "{{ (syspkgs | default([])) + ['kitty', 'kitty-shell-integration'] }}"
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'konsole' ] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
@@ -1,18 +0,0 @@
|
||||
---
|
||||
- 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"
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + neovide_deps }}"
|
||||
srcpkgs: "{{ srcpkgs + [ 'build/neovide.yml' ] }}"
|
||||
@@ -1,20 +0,0 @@
|
||||
---
|
||||
- name: add build deps
|
||||
set_fact:
|
||||
neovim_deps:
|
||||
- ninja-build
|
||||
- cmake
|
||||
- gcc
|
||||
- make
|
||||
- gettext
|
||||
- curl
|
||||
- glibc-gconv-extra
|
||||
- set_fact:
|
||||
syspkgs: "{{ syspkgs + neovim_deps }}"
|
||||
|
||||
- name: append to srcpkgs
|
||||
set_fact:
|
||||
srcpkgs: "{{ srcpkgs + ['neovim'] }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- srcpkg
|
||||
@@ -1,4 +0,0 @@
|
||||
---
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
srcpkgs: "{{ srcpkgs + [ 'Linux/nerdfonts.yml' ] }}"
|
||||
31
tasks/pkgs/alacritty.yml
Normal file
31
tasks/pkgs/alacritty.yml
Normal file
@@ -0,0 +1,31 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: alacritty.yml
|
||||
name: _alacritty
|
||||
|
||||
- name: linux based installation
|
||||
when: ansible_system == 'Linux'
|
||||
block:
|
||||
- name: install rust and cargo
|
||||
ansible.builtin.include_tasks:
|
||||
file: "pkgs/{{ ansible_os_family }}/rust.yml"
|
||||
tags:
|
||||
- rust
|
||||
- dependency
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + _alacritty[ansible_distribution].build_deps }}"
|
||||
srcpkgs: "{{ srcpkgs + [ 'build/alacritty.yml' ] }}"
|
||||
tags:
|
||||
- syspkgs
|
||||
- srcpkgs
|
||||
|
||||
- name: append alacritty to caskpkgs
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'alacritty' ] }}"
|
||||
when: ansible_system == 'Darwin'
|
||||
tags:
|
||||
- MacOS
|
||||
- brew
|
||||
- package
|
||||
26
tasks/pkgs/carapace.yml
Normal file
26
tasks/pkgs/carapace.yml
Normal file
@@ -0,0 +1,26 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: carapace.yml
|
||||
name: _carapace
|
||||
|
||||
- name: install carapace RPM
|
||||
ansible.builtin.yum_repository:
|
||||
name: Gemfury Private Repo
|
||||
baseurl: https://yum.fury.io/rsteube/
|
||||
enabled: true
|
||||
gpgcheck: false
|
||||
state: present
|
||||
when: ansible_os_familiy == 'RedHat'
|
||||
become: true
|
||||
|
||||
- name: enable carapace repository
|
||||
become: true
|
||||
ansible.builtin.apt_repository:
|
||||
repo: "deb [trusted=yes] https://apt.fury.io/rsteube/ /"
|
||||
state: present
|
||||
update_cache: false
|
||||
when: ansible_os_family == 'Debian'
|
||||
|
||||
- name: add carapace to syspkgs
|
||||
ansible.builtin.set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'carapace-bin' ] }}"
|
||||
13
tasks/pkgs/consul.yml
Normal file
13
tasks/pkgs/consul.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: consul.yml
|
||||
name: _consul
|
||||
|
||||
- name: ensure hashicorp repo is active
|
||||
ansible.builtin.include_tasks:
|
||||
file: "pkgs/hashicorp_repo.yml"
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ _consul[ansible_os_family].pkg ] }}"
|
||||
|
||||
14
tasks/pkgs/firefox.yml
Normal file
14
tasks/pkgs/firefox.yml
Normal file
@@ -0,0 +1,14 @@
|
||||
---
|
||||
- name: append to pkgs
|
||||
when: ansible_os_family != 'Darwin'
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'firefox' ] }}"
|
||||
tags:
|
||||
- packages
|
||||
|
||||
- name: append to caskpkgs
|
||||
when: ansible_os_family == 'Darwin'
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'firefox' ] }}"
|
||||
tags:
|
||||
- packages
|
||||
@@ -1,5 +1,4 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'fzf' ] }}"
|
||||
34
tasks/pkgs/ghostty.yml
Normal file
34
tasks/pkgs/ghostty.yml
Normal file
@@ -0,0 +1,34 @@
|
||||
---
|
||||
- name: ensure dependencies
|
||||
when: ansible_distribution == 'Fedora'
|
||||
block:
|
||||
- ansible.builtin.include_tasks:
|
||||
file: "pkgs/terra_repo.yml"
|
||||
tags:
|
||||
- dependency
|
||||
- package
|
||||
- terra
|
||||
- syspkgs
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'ghostty' ] }}"
|
||||
tags:
|
||||
- syspkgs
|
||||
|
||||
- name: no ghostty for this system
|
||||
when:
|
||||
- ansible_distribution != 'Fedora'
|
||||
- ansible_system == 'Linux'
|
||||
debug:
|
||||
msg: ghostty cannot be installed this way for your distribution
|
||||
|
||||
- name: append ghostty to caskpkgs
|
||||
when: ansible_distribution == 'MacOSX'
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'ghostty' ] }}"
|
||||
tags:
|
||||
- MacOS
|
||||
- brew
|
||||
- package
|
||||
- terminal
|
||||
13
tasks/pkgs/git.yml
Normal file
13
tasks/pkgs/git.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: git.yml
|
||||
name: _git
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + _git[ansible_system].pkgs }}"
|
||||
tags:
|
||||
- RedHat
|
||||
- linux
|
||||
- package
|
||||
|
||||
68
tasks/pkgs/hashicorp_repo.yml
Normal file
68
tasks/pkgs/hashicorp_repo.yml
Normal file
@@ -0,0 +1,68 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: hashicorp_repo.yml
|
||||
name: _hashicorp
|
||||
|
||||
- name: RedHat repository
|
||||
when: ansible_os_family == 'RedHat'
|
||||
block:
|
||||
- name: enable hashicorp repo for fedora >=41
|
||||
become: true
|
||||
when:
|
||||
- ansible_distribution == 'Fedora'
|
||||
- ansible_distribution_major_version|int >= 41
|
||||
ansible.builtin.command:
|
||||
creates: /etc/yum.repos.d/hashicorp.repo
|
||||
cmd: "dnf config-manager addrepo --from-repofile={{ _hashicorp.Fedora.repo }}"
|
||||
|
||||
- name: enable hashicorp repo for fedora <41
|
||||
become: true
|
||||
when:
|
||||
- ansible_distribution == 'Fedora'
|
||||
- ansible_distribution_major_version|int < 41
|
||||
ansible.builtin.command:
|
||||
creates: /etc/yum.repos.d/hashicorp.repo
|
||||
cmd: "dnf config-manager --add-repo {{ _hashicorp.Fedora.repo }}"
|
||||
|
||||
- name: enable hashicorp repo for RHEL like distribution
|
||||
become: true
|
||||
when:
|
||||
- ansible_distribution != 'Fedora'
|
||||
ansible.builtin.command:
|
||||
creates: /etc/yum.repos.d/hashicorp.repo
|
||||
cmd: "dnf config-manager --add-repo {{ _hashicorp.RedHat.repo }}"
|
||||
|
||||
- name: Debian based repository
|
||||
when: ansible_os_family == 'Debian'
|
||||
block:
|
||||
- ansible.builtin.tempfile:
|
||||
state: directory
|
||||
prefix: hashicorp.
|
||||
register: d_hashicorp_tmp
|
||||
|
||||
- name: get hashicorp archive gpg key
|
||||
ansible.built.get_url:
|
||||
dest: "{{ d_hashicorp_tmp.path }}/gpg"
|
||||
url: https://apt.releases.hashicorp.com/gpg
|
||||
|
||||
- name: install hashicorp archive gpg key
|
||||
become: true
|
||||
ansible.builtin.command:
|
||||
cmd:
|
||||
- gpg
|
||||
- --dearmor
|
||||
- -o
|
||||
- /usr/share/keyrings/hashicorp-archive-keyring.gpg
|
||||
- "{{ d_hashicorp_tmp.path }}/gpg"
|
||||
|
||||
- name: enable hasicorp repo for debian
|
||||
ansible.builtin.apt_repository:
|
||||
repo: "{{ _hashicorp.Debian.repo }}"
|
||||
state: present
|
||||
update_cache: false
|
||||
|
||||
- name: enable hashicorp homebrew tap
|
||||
when: ansible_os_family == 'Darwin'
|
||||
community.general.homebrew_tap:
|
||||
name: hashicorp/tap
|
||||
state: present
|
||||
@@ -1,5 +1,4 @@
|
||||
---
|
||||
|
||||
- name: append to pkgs
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + [ 'hugo' ] }}"
|
||||
8
tasks/pkgs/kitty.yml
Normal file
8
tasks/pkgs/kitty.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: kitty.yml
|
||||
name: _kitty
|
||||
|
||||
- name: add to syspkgs
|
||||
ansible.builtin.set_fact:
|
||||
syspkgs: "{{ syspkgs + _kitty[ansible_system].pkgs }}"
|
||||
15
tasks/pkgs/neovide.yml
Normal file
15
tasks/pkgs/neovide.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: neovide.yml
|
||||
name: _neovide
|
||||
|
||||
- name: append to pkgs
|
||||
when: ansible_system == 'Linux'
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + _neovide[ansible_os_family].pkgdeps }}"
|
||||
srcpkgs: "{{ srcpkgs + [ 'build/neovide.yml' ] }}"
|
||||
|
||||
- name: append neovide to caskpkgs
|
||||
when: ansible_system == 'Darwin'
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'neovide' ] }}"
|
||||
34
tasks/pkgs/neovim.yml
Normal file
34
tasks/pkgs/neovim.yml
Normal file
@@ -0,0 +1,34 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: neovim.yml
|
||||
name: _neovim
|
||||
|
||||
- name: linux installation
|
||||
when: ansible_system == 'Linux'
|
||||
block:
|
||||
- name: ensure install dir exists
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
path: "{{ _neovim.install_dir }}"
|
||||
|
||||
- name: install neovim appimage
|
||||
ansible.builtin.get_url:
|
||||
backup: true
|
||||
url: "{{ _neovim[ansible_system].appimage.dl }}"
|
||||
dest: "{{ _neovim.install_dir }}/nvim.appimage"
|
||||
mode: "0755"
|
||||
owner: root
|
||||
group: root
|
||||
checksum: "{{ _neovim[ansible_system].appimage.checksum }}"
|
||||
|
||||
- name: link neovim to prefix bin
|
||||
ansible.builtin.file:
|
||||
state: link
|
||||
src: "{{ _neovim.install_dir }}/nvim.appimage }}"
|
||||
path: "{{ _neovim.install_prefix }}/bin/nvim }}"
|
||||
|
||||
- name: append neovim to syspkgs
|
||||
when: ansible_system == 'Darwin'
|
||||
set_fact:
|
||||
syspkgs: "{{ syspkgs + ['neovim'] }}"
|
||||
|
||||
17
tasks/pkgs/nerdfonts.yml
Normal file
17
tasks/pkgs/nerdfonts.yml
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
- ansible.builtin.include_vars:
|
||||
file: nerdfonts.yml
|
||||
name: _nerdfonts
|
||||
|
||||
- name: append to srcpkgs
|
||||
when: ansible_system == 'Linux'
|
||||
set_fact:
|
||||
srcpkgs: "{{ srcpkgs + [ 'nerdfonts' ] }}"
|
||||
|
||||
- name: append to caskpkgs
|
||||
when: ansible_system == 'Darwin'
|
||||
set_fact:
|
||||
caskpkgs: "{{ caskpkgs + [ 'font-' + font.brew + '-nerd-font' ] }}"
|
||||
loop: "{{ _nerfonts.fonts }}"
|
||||
loop_control:
|
||||
loop_var: font
|
||||
@@ -1,2 +1,19 @@
|
||||
---
|
||||
version: 0.15.0
|
||||
RedHat:
|
||||
build_deps:
|
||||
- cmake
|
||||
- freetype-devel
|
||||
- fontconfig-devel
|
||||
- libxcb-devel
|
||||
- libxkbcommon-devel
|
||||
- g++
|
||||
Debian:
|
||||
build_deps:
|
||||
- cmake
|
||||
- pkg-config
|
||||
- libfreetype6-dev
|
||||
- libfontconfig1-dev
|
||||
- libxcb-xfixes0-dev
|
||||
- libxkbcommon-dev
|
||||
- python3
|
||||
|
||||
5
vars/consul.yml
Normal file
5
vars/consul.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
Linux:
|
||||
pkg: consul
|
||||
Darwin:
|
||||
pkg: hashicorp/tap/consul
|
||||
12
vars/git.yml
Normal file
12
vars/git.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
Darwin:
|
||||
pkgs:
|
||||
- git
|
||||
- git-delta
|
||||
- git-extras
|
||||
- git-lfs
|
||||
Linux:
|
||||
pkgs:
|
||||
- git
|
||||
- git-delta
|
||||
- git-email
|
||||
- git-lfs
|
||||
7
vars/hashicorp_repo.yml
Normal file
7
vars/hashicorp_repo.yml
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
RedHat:
|
||||
repo: https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
|
||||
Fedora:
|
||||
repo: https://rpm.releases.hashicorp.com/fedora/hashicorp.repo
|
||||
Debian:
|
||||
repo: "deb [arch={{ ansible_architecture }} signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com {{ ansible_distribution_release }} main"
|
||||
7
vars/kitty.yml
Normal file
7
vars/kitty.yml
Normal file
@@ -0,0 +1,7 @@
|
||||
Darwin:
|
||||
pkgs:
|
||||
- kitty
|
||||
Linux:
|
||||
pkgs:
|
||||
- kitty
|
||||
- kitty-shell-integration
|
||||
@@ -1,3 +1,25 @@
|
||||
---
|
||||
version: 0.14.0
|
||||
install_prefix: /usr/local
|
||||
RedHat:
|
||||
pkgdeps:
|
||||
- cargo
|
||||
- fontconfig-devel
|
||||
- freetype-devel
|
||||
- libX11-xcb
|
||||
- libX11-devel
|
||||
- libstdc++-static
|
||||
- libstdc++-devel
|
||||
- "@Development Tools"
|
||||
- "@Development Libraries"
|
||||
Debian:
|
||||
pkgdeps:
|
||||
- cargo
|
||||
- fontconfig-devel
|
||||
- freetype-devel
|
||||
- libX11-xcb
|
||||
- libX11-devel
|
||||
- libstdc++-static
|
||||
- libstdc++-devel
|
||||
- "@Development Tools"
|
||||
- "@Development Libraries"
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
---
|
||||
git_repo: https://github.com/neovim/neovim.git
|
||||
version: 0.10.3
|
||||
build_type: Release
|
||||
version: latest
|
||||
install_prefix: /usr/local
|
||||
install_dir: /opt/nvim
|
||||
Linux:
|
||||
appimage:
|
||||
dl: https://github.com/neovim/neovim/releases/latest/download/nvim.appimage
|
||||
checksum: https://github.com/neovim/neovim/releases/download/latest/nvim.appimage.sha256sum
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
nerdfonts:
|
||||
fonts:
|
||||
- name: CascadiaCode
|
||||
brew: caskaydia-cove
|
||||
- name: FiraCode
|
||||
@@ -13,4 +13,3 @@ nerdfonts:
|
||||
- name: NerdFontsSymbolsOnly
|
||||
brew: symbols-only
|
||||
nerdfonts_system_install: false
|
||||
|
||||
|
||||
Reference in New Issue
Block a user