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
|
- name: build and install alacritty
|
||||||
become: true
|
become: true
|
||||||
ansible.builtin.command:
|
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
|
# Install nerdfonts for each platform
|
||||||
---
|
---
|
||||||
- name: set install path for non-system installs
|
- name: linux installation
|
||||||
ansible.builtin.set_fact:
|
when: ansible_system == 'Linux'
|
||||||
nerdfont_install_path: "{{ lookup('ansible.builtin.env', 'HOME') }}/.local/share/fonts"
|
block:
|
||||||
when: not nerdfonts_system_install
|
- name: set install path for non-system installs
|
||||||
|
ansible.builtin.set_fact:
|
||||||
|
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:
|
ansible.builtin.set_fact:
|
||||||
nerdfont_install_path: "/usr/local/share/fonts"
|
nerdfonts_install_path: "/usr/local/share/fonts"
|
||||||
when: nerdfonts_system_install
|
when: _nerdfonts.nerdfonts_system_install
|
||||||
|
|
||||||
- name: create nerdfonts directories
|
- name: create nerdfonts directories
|
||||||
ansible.builtin.file:
|
ansible.builtin.file:
|
||||||
path: "{{ nerdfonts_install_path }}/{{ font.name }}"
|
path: "{{ nerdfonts_install_path }}/{{ font.name }}"
|
||||||
state: directory
|
state: directory
|
||||||
become: nerdfonts_system_install
|
become: "{{ _nerdfonts.nerdfonts_system_install }}"
|
||||||
loop: "{{ nerdfonts }}"
|
loop: "{{ nerdfonts }}"
|
||||||
loop_control:
|
loop_control:
|
||||||
loop_var: font
|
loop_var: font
|
||||||
register: nerdfont_result
|
register: nerdfont_result
|
||||||
|
|
||||||
- name: Download and extract nerdfonts
|
- name: Download and extract nerdfonts
|
||||||
ansible.builtin.unarchive:
|
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"
|
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
|
remote_src: true
|
||||||
when: nerdfont_result is changed
|
when: nerdfont_result is changed
|
||||||
become: nerdfonts_system_install
|
become: nerdfonts_system_install
|
||||||
loop: "{{ nerdfonts }}"
|
loop: "{{ _nerdfonts.fonts }}"
|
||||||
loop_control:
|
loop_control:
|
||||||
loop_var: font
|
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:
|
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
|
- name: append to pkgs
|
||||||
set_fact:
|
set_fact:
|
||||||
syspkgs: "{{ syspkgs + [ 'fzf' ] }}"
|
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
|
- name: append to pkgs
|
||||||
set_fact:
|
set_fact:
|
||||||
syspkgs: "{{ syspkgs + [ 'hugo' ] }}"
|
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
|
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
|
version: 0.14.0
|
||||||
install_prefix: /usr/local
|
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: latest
|
||||||
version: 0.10.3
|
|
||||||
build_type: Release
|
|
||||||
install_prefix: /usr/local
|
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
|
- name: CascadiaCode
|
||||||
brew: caskaydia-cove
|
brew: caskaydia-cove
|
||||||
- name: FiraCode
|
- name: FiraCode
|
||||||
@@ -13,4 +13,3 @@ nerdfonts:
|
|||||||
- name: NerdFontsSymbolsOnly
|
- name: NerdFontsSymbolsOnly
|
||||||
brew: symbols-only
|
brew: symbols-only
|
||||||
nerdfonts_system_install: false
|
nerdfonts_system_install: false
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user