work on bitwarden and flatpak

This commit is contained in:
Matthew Stobbs
2026-03-07 13:31:39 -07:00
parent 692e9dd99a
commit 19ec5f341b
71 changed files with 119 additions and 860 deletions

0
.ansible/.lock Normal file
View File

View File

@@ -1,59 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Check if go is already installed
ansible.builtin.stat:
path: "{{ path.go }}/bin/go"
register: stat_path_go
- name: Check installed go version
when:
- stat_path_go.stat.exists
block:
- name: Get installed version
register: r_go_version
ansible.builtin.command:
argv:
- "{{ path.go }}/bin/go"
- version
- name: Check if go needs updating
ansible.builtin.set_fact:
go_do_update: "{{ r_go_version.stdout.find(go.vers) == -1 }}"
- name: Install/update go
when:
- not stat_path_go.stat.exists or
go_do_update
block:
- name: Remove existing go install
when:
- ansible_system == 'Linux'
become: "{{ ext_become }}"
ansible.builtin.file:
state: absent
path: "{{ path.go }}"
- name: Download go archive
register: get_url_go
ansible.builtin.get_url:
dest: "{{ d_tempdir.path }}/{{ go.archive }}"
url: "{{ go.base_url }}/{{ go.archive }}"
checksum: "{{ go.sum }}"
decompress: false
mode: '0644'
- name: Extract go package for Linux
become: "{{ ext_become }}"
when:
- ansible_system == 'Linux'
ansible.builtin.unarchive:
dest: "{{ go.prefix }}"
src: "{{ d_tempdir.path }}/{{ go.archive }}"
remote_src: true
- name: Install go macOS using pkg file
become: true
when:
- ansible_distribution == 'MacOSX'
ansible.builtin.command:
cmd: "installer -pkg {{ d_tempdir.path }}/{{ go.archive }} -target {{ go.prefix }}"

View File

@@ -1,29 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Linux installation
when: ansible_system == 'Linux'
block:
- name: Create nerdfonts directories
become: "{{ ext_become }}"
loop: "{{ nerdfonts.fonts }}"
loop_control:
loop_var: font
register: nerdfont_result
ansible.builtin.file:
path: "{{ path.prefix }}/{{ nerdfonts.path }}/{{ font }}"
state: directory
mode: '0755'
- name: Download and extract nerdfonts
when:
- nerdfont_result is changed or
nerdfonts.force_install
become: "{{ ext_become }}"
loop: "{{ nerdfonts.fonts }}"
loop_control:
loop_var: font
ansible.builtin.unarchive:
creates: "{{ path.prefix }}/{{ nerdfonts.path }}/{{ font }}/README.md"
src: "{{ nerdfonts.base_url }}/{{ pkgconfig.nerdfonts.fonts[font].archive | default(font) }}.tar.xz"
dest: "{{ path.prefix }}/{{ nerdfonts.path }}/{{ font }}"
remote_src: true

View File

@@ -1,31 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set bitwarden install method for Linux
when:
- ansible_system == 'Linux'
ansible.builtin.set_fact:
bitwarden:
method: "{{ pkgconfig.bitwarden.method[ansible_distribution] | default('flatpak') }}"
- name: Set bitwarden install method for MacOSX
when:
- ansible_system == 'Darwin'
ansible.builtin.set_fact:
bitwarden:
method: cask
- name: Set bitwarden config
ansible.builtin.set_fact:
bitwarden:
method: "{{ bitwarden.method }}"
pkg: "{{ pkgconfig.bitwarden[bitwarden.method] }}"
- name: Set bitwarden config for appimage install
when:
- bitwarden.method == 'appimage'
ansible.builtin.set_fact:
bitwarden:
method: appimage
file: "{{ pkgconfig.bitwarden.appimage.name }}"
link_name: "{{ pkgconfig.bitwarden.appimage.link_name }}"
url: "{{ pkgconfig.bitwarden.appimage.url }}"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set broot config
ansible.builtin.set_fact:
broot:
vers: "{{ pkgconfig.broot.version }}"
name: broot
locked: true
deps: "{{ pkgconfig.broot.build_deps[ansible_os_family] }}"

View File

@@ -1,7 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set carapace config
ansible.builtin.set_fact:
carapace:
pkgs: "{{ pkgconfig.carapace.pkgs[ansible_os_family] }}"
repo: "{{ pkgconfig.carapace.repo[ansible_os_family] }}"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Load cbfmt configuration
ansible.builtin.include_tasks:
file: config/cbfmt.yml
- name: Append cbfmt to pkg_sys
ansible.builtin.set_fact:
pkg_sys: "{{ pkg_sys + cbfmt.pkgs }}"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set choose config
ansible.builtin.set_fact:
choose:
name: choose
vers: "{{ pkgconfig.choose.version }}"
locked: true
choose_configured: true

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set clangd config
ansible.builtin.set_fact:
clangd:
pkgs: "{{ pkgconfig.clangd.pkgs[ansible_os_family] }}"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Load cmake-format configuration
ansible.builtin.include_tasks:
file: config/cmake-format.yml
- name: Append cmake-format to pkg_sys
ansible.builtin.set_fact:
pkg_sys: "{{ pkg_sys + cmake_format.pkgs }}"

View File

@@ -1,7 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set cockpit configuration
ansible.builtin.set_fact:
cockpit:
enabled: true
pkgs: "{{ pkgconfig.cockpit.pkgs[ansible_os_family] | default([]) }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set configuration for consul
ansible.builtin.set_fact:
consul:
pkgs: "{{ pkgconfig.consul.pkgs[ansible_system] }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set fd config
ansible.builtin.set_fact:
fd:
pkgs: "{{ pkgconfig.fd.pkgs[ansible_os_family] }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Load firefox pkgconfig
ansible.builtin.set_fact:
firefox:
method: "{{ pkgconfig.firefox.method[ansible_os_family] | default(pkgconfig.firefox.method.default) }}"

View File

@@ -1,42 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set ghostty install method
ansible.builtin.set_fact:
ghostty:
method: "{{ pkgconfig.ghostty.methods[ansible_distribution] | default(pkgconfig.ghostty.methods.default) }}"
- name: Set ghostty config
when:
- ghostty.method == 'src'
ansible.builtin.set_fact:
ghostty:
method: "{{ ghostty.method }}"
arch: "{{ pkgconfig.ghostty.archmap[ansible_architecture] }}"
clean: "{{ pkgconfig_ghostty_clean | default(package_default_clean_src) }}"
deps: "{{ pkgconfig.ghostty.build_deps[ansible_os_family] }}"
vers: "{{ pkgconfig.ghostty.version }}"
pkg: "{{ pkgconfig.ghostty[ghostty.method] }}"
repo: "{{ pkgconfig.ghostty.git_repo }}"
build_deps: "{{ pkgconfig.ghostty.build_deps[ansible_os_family] }}"
optimize: "{{ pkgconfig.ghostty.optimize }}"
installed_files: "{{ pkgconfig.ghostty.build_installed_files }}"
- name: Set ghostty package manager install
when:
- ghostty.method == 'sys' or
ghostty.method == 'cask'
ansible.builtin.set_fact:
ghostty:
method: "{{ ghostty.method }}"
pkg: "{{ pkgconfig.ghostty[ghostty.method] }}"
pkg_repo: "{{ pkgconfig.ghostty.pkg_repo[ansible_distribution] | default(omit) }}"
- name: Set ghostty config for appimage install
when:
- ghostty.method == 'appimage'
ansible.builtin.set_fact:
ghostty:
method: "{{ ghostty.method }}"
file: "Ghostty-{{ ghostty.vers }}-{{ ghostty.arch }}.AppImage"
link_name: "{{ pkgconfig.ghostty.appimage.link_name }}"
url: "{{ pkgconfig.ghostty.appimage.base_url }}/v{{ ghostty.vers }}/Ghostty-{{ ghostty.vers }}-{{ ghostty.arch }}.AppImage"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set git config
ansible.builtin.set_fact:
git:
pkgs: "{{ pkgconfig.git.pkgs[ansible_os_family] }}"

View File

@@ -1,21 +0,0 @@
# vim: set filetype=yaml.ansible #
---
- name: Set gitea server version
ansible.builtin.set_fact:
gitea_server:
vers: "{{ pkgconfig.gitea_server.version }}"
- name: Set gitea server url and filename
ansible.builtin.set_fact:
gitea_server:
vers: "{{ gitea_server.vers }}"
url: "{{ pkgconfig.gitea_server.baseurl }}/{{ gitea_server.vers }}"
file: "gitea-{{ gitea_server.vers }}-{{ pkgconfig.gitea_server.os[ansible_system] }}-{{ pkgconfig.gitea_server.arch[ansible_architecture] }}"
- name: Set gitea server sha256sum url
ansible.builtin.set_fact:
gitea_server:
vers: "{{ gitea_server.vers }}"
url: "{{ gitea_server.url }}"
file: "{{ gitea_server.file }}"
sha256url: "sha256:{{ pkgconfig.gitea_server.baseurl }}/{{ gitea_server.vers }}/{{ gitea_server.file }}.sha256"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set config for greetd
ansible.builtin.set_fact:
greetd:
pkgs: "{{ pkgconfig.greetd.pkgs[ansible_os_family] }}"

View File

@@ -1,15 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set OS name for RedHat family
when:
- ansible_os_family == 'RedHat'
ansible.builtin.set_fact:
hashicorp:
repo: "{{ pkgconfig.hashicorp.Linux[rpm_dist.stdout].repo }}"
- name: Set repo for debian
when:
- ansible_os_family == 'Debian'
ansible.builtin.set_fact:
hashicorp:
repo: "{{ pkgconfig.hashicorp.Linux.Debian.repo }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set method for httpie
ansible.builtin.set_fact:
httpie:
method: "{{ pkgconfig.httpie.method[ansible_distribution] | default(pkgconfig.httpie.method.default) }}"
- name: Set config for httpie
ansible.builtin.set_fact:
httpie:
method: "{{ httpie.method }}"
pkg: "{{ pkgconfig.httpie[httpie.method] }}"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprcursor config
ansible.builtin.set_fact:
hyprcursor:
vers: "{{ pkgconfig.hyprcursor.version }}"
pkg_deps: "{{ pkgconfig.hyprcursor.pkg_deps }}"
build_deps: "{{ srcconfig.hyprcursor.deps[ansible_os_family] }}"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,8 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprgraphics config
ansible.builtin.set_fact:
hyprgraphics:
vers: "{{ pkgconfig.hyprgraphics.version }}"
build_deps: "{{ srcconfig.hyprgraphics.deps[ansible_os_family] }}"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hypridle config
ansible.builtin.set_fact:
hypridle:
vers: "{{ pkgconfig.hypridle.version }}"
repo: "{{ pkgconfig.hypridle.repo }}"
pkg_deps: "{{ pkgconfig.hypridle.pkg_deps }}"
build_deps: "{{ pkgconfig.hypridle.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hypridle.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/hypridle"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,13 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprland config
ansible.builtin.set_fact:
hyprland:
vers: "{{ pkgconfig.hyprland.version }}"
repo: "{{ pkgconfig.hyprland.repo }}"
pkg_deps: "{{ pkgconfig.hyprland.pkg_deps }}"
build_deps: "{{ pkgconfig.hyprland.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hyprland.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/Hyprland"
prefix: "/usr/local"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,11 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprland-protocols config
ansible.builtin.set_fact:
hyprland_protocols:
vers: "{{ pkgconfig.hyprland_protocols.version }}"
repo: "{{ pkgconfig.hyprland_protocols.repo }}"
build_deps: "{{ pkgconfig.hyprland_protocols.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hyprland_protocols.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/hyprland-protocols"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprland_qt_support config
ansible.builtin.set_fact:
hyprland_qt_support:
vers: "{{ pkgconfig.hyprland_qt_support.version }}"
repo: "{{ pkgconfig.hyprland_qt_support.repo }}"
pkg_deps: "{{ pkgconfig.hyprland_qt_support.pkg_deps }}"
build_deps: "{{ pkgconfig.hyprland_qt_support.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hyprland_qt_support.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/hyprland_qt_support"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprland_qtutils config
ansible.builtin.set_fact:
hyprland_qtutils:
vers: "{{ pkgconfig.hyprland_qtutils.version }}"
repo: "{{ pkgconfig.hyprland_qtutils.repo }}"
pkg_deps: "{{ pkgconfig.hyprland_qtutils.pkg_deps }}"
build_deps: "{{ pkgconfig.hyprland_qtutils.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hyprland_qtutils.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/hyprland_qtutils"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprlang config
ansible.builtin.set_fact:
hyprlang:
vers: "{{ pkgconfig.hyprlang.version }}"
repo: "{{ pkgconfig.hyprlang.repo }}"
pkg_deps: "{{ pkgconfig.hyprlang.pkg_deps }}"
build_deps: "{{ pkgconfig.hyprlang.build_deps[ansible_os_family] }}"
git_path: "{{ d_tempdir.path }}/hyprlang"
installed_files: "{{ pkgconfig.hyprlang.build_installed_files }}"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprlock config
ansible.builtin.set_fact:
hyprlock:
vers: "{{ pkgconfig.hyprlock.version }}"
repo: "{{ pkgconfig.hyprlock.repo }}"
pkg_deps: "{{ pkgconfig.hyprlock.pkg_deps }}"
build_deps: "{{ pkgconfig.hyprlock.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hyprlock.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/hyprlock"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprpaper config
ansible.builtin.set_fact:
hyprpaper:
vers: "{{ pkgconfig.hyprpaper.version }}"
repo: "{{ pkgconfig.hyprpaper.repo }}"
pkg_deps: "{{ pkgconfig.hyprpaper.pkg_deps }}"
build_deps: "{{ pkgconfig.hyprpaper.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hyprpaper.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/hyprpaper"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprpicker config
ansible.builtin.set_fact:
hyprpicker:
vers: "{{ pkgconfig.hyprpicker.version }}"
repo: "{{ pkgconfig.hyprpicker.repo }}"
pkg_deps: "{{ pkgconfig.hyprpicker.pkg_deps }}"
build_deps: "{{ pkgconfig.hyprpicker.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hyprpicker.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/hyprpicker"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,11 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprpolkitagent config
ansible.builtin.set_fact:
hyprpolkitagent:
vers: "{{ pkgconfig.hyprpolkitagent.version }}"
repo: "{{ pkgconfig.hyprpolkitagent.repo }}"
build_deps: "{{ pkgconfig.hyprpolkitagent.build_deps[ansible_os_family] }}"
installed_files: "{{ pkgconfig.hyprpolkitagent.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/hyprpolkitagent"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,11 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyprutils config
ansible.builtin.set_fact:
hyprutils:
vers: "{{ pkgconfig.hyprutils.version }}"
repo: "{{ pkgconfig.hyprutils.repo }}"
git_path: "{{ d_tempdir.path }}/hyprutils"
installed_files: "{{ pkgconfig.hyprutils.build_installed_files }}"
build_deps: "{{ pkgconfig.hyprutils.build_deps[ansible_os_family] }}"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,11 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set hyperwayland-scanner config
ansible.builtin.set_fact:
hyprwayland_scanner:
vers: "{{ pkgconfig.hyprwayland_scanner.version }}"
repo: "{{ pkgconfig.hyprwayland_scanner.repo }}"
build_deps: "{{ pkgconfig.hyprwayland_scanner.build_deps[ansible_os_family] }}"
git_path: "{{ d_tempdir.path }}/hyprwayland-scanner"
installed_files: "{{ pkgconfig.hyprwayland_scanner.build_installed_files }}"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set kitty config
ansible.builtin.set_fact:
kitty:
pkgs: "{{ pkgconfig.kitty.pkgs[ansible_system] }}"

View File

@@ -1,8 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set libreoffice config
ansible.builtin.set_fact:
libreoffice:
method: "{{ pkgconfig.libreoffice.methods[ansible_distribution] | default(pkgconfig.libreoffice.methods.default) }}"
flatpak: "{{ pkgconfig.libreoffice.flatpak }}"
pkgs: "{{ pkgconfig.libreoffice.pkgs[ansible_os_family] }}"

View File

@@ -1,17 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set luals config
ansible.builtin.set_fact:
luals:
vers: "{{ pkgconfig.luals.version }}"
sys: "{{ pkgconfig.luals.sysmap[ansible_system] }}"
arch: "{{ pkgconfig.luals.archmap[ansible_architecture] }}"
- name: Set luals config
ansible.builtin.set_fact:
luals:
vers: "{{ luals.vers }}"
sys: "{{ luals.sys }}"
arch: "{{ luals.arch }}"
archive: "lua-language-server-{{ luals.vers }}-{{ luals.sys }}-{{ luals.arch }}.tar.gz"
url: "{{ pkgconfig.luals.base_url }}/{{ luals.vers }}"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set neovide config
ansible.builtin.set_fact:
neovide:
name: neovide
build_deps: "{{ pkgconfig.neovide.build_deps[ansible_os_family] }}"
vers: "{{ pkgconfig.neovide.version }}"
locked: true

View File

@@ -1,39 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set neovim install method
ansible.builtin.set_fact:
neovim:
method: "{{ pkgconfig.neovim.methods[ansible_distribution] | default(pkgconfig.neovim.methods.default) }}"
- name: Set neovim sys package manager config
when:
- neovim.method == 'sys'
ansible.builtin.set_fact:
neovim:
method: "{{ neovim.method }}"
pkgs: "{{ pkgconfig.neovim.pkgs[ansible_distribution] | default(pkgconfig.neovim.pkgs.default) }}"
- name: Set neovim src build config
when:
- neovim.method == 'src'
ansible.builtin.set_fact:
neovim:
method: "{{ neovim.method }}"
vers: "{{ pkgconfig.neovim.git_branch }}"
build_deps: "{{ pkgconfig.neovim.build_deps[ansible_os_family] }}"
git_repo: "{{ pkgconfig.neovim.git_repo }}"
git_path: "{{ d_tempdir.path }}/neovim"
git_branch: "{{ pkgconfig.neovim.git_branch }}"
build_type: "{{ pkgconfig.neovim.build_type }}"
clean: "{{ pkgconfig_neovim.clean | default(_pkgconfig_force_rebuild) }}"
installed_files: "{{ pkgconfig.neovim.build_installed_files }}"
- name: Set neovim config for appimage install
when:
- neovim.method == 'appimage'
ansible.builtin.set_fact:
neovim:
method: "{{ neovim.method }}"
file: "nvim-linux-{{ ansible_architecture }}.appimage"
link_name: nvim
url: "{{ pkgconfig.neovim.appimage.base_url }}/{{ neovim.vers }}/nvim-linux-{{ ansible_architecture }}.appimage"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set facts for nerdfonts
ansible.builtin.set_fact:
nerdfonts:
fonts: "{{ nerdfonts_install | default(pkgconfig.nerdfonts.default_install) }}"
path: "{{ pkgconfig.nerdfonts.path }}"
base_url: "{{ pkgconfig.nerdfonts.base_url }}"
force_install: "{{ pkgconfig.force_install_nerdfonts | default(false) }}"

View File

@@ -1,15 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set nextcloud install method
ansible.builtin.set_fact:
nextcloud:
method: "{{ pkgconfig.nextcloud.method | default('flatpak') }}"
- name: Set nextcloud config
when:
- nextcloud.method == 'flatpak'
ansible.builtin.set_fact:
nextcloud:
method: "{{ nextcloud.method }}"
name: "{{ pkgconfig.nextcloud.flatpak.name }}"
remote: "{{ pkgconfig.nextcloud.flatpak.remote }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Configure nfs_client
ansible.builtin.set_fact:
nfs_client:
pkgs: "{{ pkgconfig.nfs_client.pkgs[ansible_os_family] }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Configure nfs_server
ansible.builtin.set_fact:
nfs_server:
pkgs: "{{ pkgconfig.nfs_server.pkgs[ansible_os_family] }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set nodejs config
ansible.builtin.set_fact:
nodejs:
pkgs: "{{ pkgconfig.nodejs.pkgs[ansible_system] }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set nomad config
ansible.builtin.set_fact:
nomad:
pkgs: "{{ pkgconfig.nomad.pkgs[ansible_system] }}"

View File

@@ -1,11 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set nwg-hello configuration
ansible.builtin.set_fact:
nwg_hello:
vers: "{{ pkgconfig.nwg_hello.version }}"
git_repo: "{{ pkgconfig.nwg_hello.git_repo }}"
installed_files: "{{ pkgconfig.nwg_hello.build_installed_files }}"
git_path: "{{ d_tempdir.path }}/nwg-hello"
build_deps: "{{ pkgconfig.nwg_hello.bulid_deps[ansible_os_family] }}"
clean: "{{ pkgconfig_nwg_hello_clean | default(package_default_clean_src) }}"

View File

@@ -1,25 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set packer config
ansible.builtin.set_fact:
packer:
method: "{{ pkgconfig.packer.method[ansible_system] | default(pkgconfig.packer.method.default) }}"
- name: Set packer config for system install
when:
- packer.method == 'sys' or
packer.method == 'tap'
ansible.builtin.set_fact:
packer:
method: "{{ packer.method }}"
pkgs: "{{ pkgconfig.packer.pkgs[ansible_system] }}"
- name: Set packer config for archive install
when:
- packer.method == 'archive'
ansible.builtin.set_fact:
packer:
method: "{{ packer.method }}"
archive:
file: "packer_{{ pkgconfig.packer.version }}_linux_amd64.zip"
url: "{{ pkgconfig.packer.archive.baseurl }}/packer/{{ pkgconfig.packer.version }}"

View File

@@ -1,8 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set pgadmin config
ansible.builtin.set_fact:
pgadmin:
method: "{{ pkgconfig.pgadmin.methods[ansible_distribution] | default(pkgconfig.pgadmin.methods.default) }}"
pkgs: "{{ pkgconfig.pgadmin.pkgs[ansible_system] }}"
flatpak: "{{ pkgconfig.pgadmin.flatpak }}"

View File

@@ -1,15 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set postgresql server install method
ansible.builtin.set_fact:
postgresql_server:
method: "{{ pkgconfig.postgresql_server.method[ansible_os_family] | default(pkgconfig.postgresql_server.method.default) }}"
vers: "{{ pkgconfig.postgresql_server.version }}"
- name: Set postgresql server config
when:
- postgresql_server.method == 'sys'
ansible.builtin.set_fact:
postgresql_server:
method: "{{ postgresql_server.method }}"
pkgs: "{{ pkgconfig.postgresql_server.pkgs[ansible_os_family][postgresql_server.vers] }}"

View File

@@ -1,14 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set pulumi config
ansible.builtin.set_fact:
pulumi:
vers: "{{ pkgconfig.pulumi.version }}"
archive: "pulumi-{{ pkgconfig.pulumi.version }}-{{ ansible_system | lower }}-{{ pkgconfig.pulumi.archmap[ansible_architecture] }}.tar.gz"
- name: Set pulumi config
ansible.builtin.set_fact:
pulumi:
vers: "{{ pulumi.vers }}"
archive: "{{ pulumi.archive }}"
dlurl: "{{ pkgconfig.pulumi.url_base }}/{{ pulumi.archive }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set python3 config
ansible.builtin.set_fact:
python3:
pkgs: "{{ pkgconfig.python3.pkgs[ansible_os_family] }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set rust config
ansible.builtin.set_fact:
rust:
pkgs: "{{ pkgconfig.rust.pkgs[ansible_os_family] }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Configure samba_client
ansible.builtin.set_fact:
samba_client:
pkgs: "{{ pkgconfig.samba_client.pkgs[ansible_os_family] | default([]) }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Configure samba_server
ansible.builtin.set_fact:
samba_server:
pkgs: "{{ pkgconfig.samba_server.pkgs[ansible_os_family] }}"

View File

@@ -1,11 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set sdbus-cpp-2 config
ansible.builtin.set_fact:
sdbus_cpp_2:
vers: "{{ pkgconfig.sdbus_cpp_2.version }}"
repo: "{{ pkgconfig.sdbus_cpp_2.repo }}"
build_deps: "{{ pkgconfig.sdbus_cpp_2.build_deps[ansible_os_family] }}"
git_path: "{{ d_tempdir.path }}/sdbus-cpp"
prefix: "/usr/local"
clean: "{{ pkgconfig_sdbus_cpp_2_clean | default(package_default_clean_src) }}"

View File

@@ -1,7 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set tailscale config
ansible.builtin.set_fact:
tailscale:
url_base: "{{ pkgconfig.tailscale.url_base }}"
release: "{{ pkgconfig.tailscale.release[ansible_distribution_release] | default({}) }}"

View File

@@ -1,7 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Configure targetcli
ansible.builtin.set_fact:
targetcli:
pkgs: "{{ pkgconfig.targetcli.pkgs[ansible_os_family] | default([]) }}"
services: "{{ pkgconfig.targetcli.services[ansible_os_family] | default([]) }}"

View File

@@ -1,25 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set terraform install method
ansible.builtin.set_fact:
terraform:
method: "{{ pkgconfig.terraform.method[ansible_os_family] | default(pkgconfig.terraform.method.default) }}"
- name: Set terraform config
when:
- terraform.method == 'sys'
ansible.builtin.set_fact:
terraform:
method: "{{ terraform.method }}"
pkgs: "{{ pkgconfig.terraform.pkgs[ansible_system] }}"
- name: Set terraform archive config
when:
- terraform.method == 'archive'
ansible.builtin.set_fact:
terraform:
method: "{{ terraform.method }}"
archive: "terraform_{{ pkgconfig.terraform.version }}_{{ pkgconfig.terraform[sysmap] }}_{{ pkgconfig.terraform[archmap] }}.zip"
url: "{{ pkgconfig.terraform.archive.baseurl }}/{{ pkgconfig.terraform.version }}"
path: "{{ path.archive }}/terraform"
bin: "{{ path.bin }}/terraform"

View File

@@ -1,22 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set terraformls install method
ansible.builtin.set_fact:
terraformls:
method: "{{ pkgconfig.terraformls.method[ansible_os_family] | default(pkgconfig.terraformls.method.default) }}"
- name: Set terraformls config
when:
- terraformls.method == 'sys'
ansible.builtin.set_fact:
terraformls:
method: "{{ terraformls.method }}"
pkgs: "{{ pkgconfig.terraformls.pkgs[ansible_system] }}"
- name: Set terraformls config
when:
- terraformls.method == 'gosrc'
ansible.builtin.set_fact:
terraformls:
method: "{{ terraformls.method }}"
gopkg: "{{ pkgconfig.terraformls.gobase }}@{{ pkgconfig.terraformls.version }}"

View File

@@ -1,6 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set tidy config
ansible.builtin.set_fact:
tidy:
pkgs: "{{ pkgconfig.tidy.pkgs[ansible_os_family] }}"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set uwsm config
ansible.builtin.set_fact:
uwsm:
vers: "{{ pkgconfig.uwsm.version }}"
repo: "{{ pkgconfig.uwsm.repo }}"
build_deps: "{{ pkgconfig.uwsm.build_deps[ansible_os_family] }}"
deps: "{{ pkgconfig.uwsm.deps[ansible_os_family] }}"
clean: "{{ pkgconfig_uwsm_clean | default(package_default_clean_src) }}"
installed_files: "{{ pkgconfig.uwsm.build_installed_files }}"
prefix: "/usr/local"

View File

@@ -1,25 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set vault install method
ansible.builtin.set_fact:
vault:
method: "{{ pkgconfig.vault.method[ansible_os_family] | default(pkgconfig.vault.method.default) }}"
- name: Set vault config
when:
- vault.method == 'sys'
ansible.builtin.set_fact:
vault:
method: "{{ vault.method }}"
pkgs: "{{ pkgconfig.vault.pkgs[ansible_system] }}"
- name: Set vault config
when:
- vault.method == 'archive'
ansible.builtin.set_fact:
vault:
method: "{{ vault.method }}"
archive: "vault_{{ pkgconfig.vault.version }}_{{ pkgconfig.vault.sysmap[ansible_system] }}_{{ pkgconfig.vault.archmap[ansible_architecture] }}.zip"
url: "{{ pkgconfig.vault.archive.baseurl }}/{{ pkgconfig.vault.version }}"
path: "{{ path.archive }}/vault"
bin: "{{ path.bin }}/vault"

View File

@@ -1,12 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set xdg-desktop-portal-hyprland config
ansible.builtin.set_fact:
xdg_desktop_portal_hyprland:
vers: "{{ pkgconfig.xdg_desktop_portal_hyprland.version }}"
repo: "{{ pkgconfig.xdg_desktop_portal_hyprland.repo }}"
pkg_deps: "{{ pkgconfig.xdg_desktop_portal_hyprland.pkg_deps }}"
build_deps: "{{ pkgconfig.xdg_desktop_portal_hyprland.build_deps[ansible_os_family] }}"
git_path: "{{ d_tempdir.path }}/xdg-desktop-portal-hyprland"
installed_files: "{{ pkgconfig.xdg_desktop_portal_hyprland.build_installed_files }}"
clean: "{{ pkgconfig_hyprland_clean | default(package_default_clean_src) }}"

View File

@@ -1,8 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set xh config
ansible.builtin.set_fact:
xh:
vers: "{{ pkgconfig.xh.version }}"
name: xh
locked: true

View File

@@ -1,23 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set distro name
when:
- ansible_os_family == 'RedHat'
ansible.builtin.set_fact:
rhname: "{%if ansible_distribution == 'Fedora' %}fedora{% else %}epel{% endif %}"
- name: Set deps for distros
ansible.builtin.set_fact:
zfs:
deps: "{% if ansible_distribution == 'Fedora' %}{{ pkgconfig.zfs.build_deps.Fedora }}{% else %}{{ pkgconfig.zfs.build_deps[ansible_os_family] }}{% endif %}"
- name: Set ZFS config
ansible.builtin.set_fact:
zfs:
repo_pkg: "{{ pkgconfig.zfs.repo_base }}/{{ rhname }}/zfs-release-{{ pkgconfig.zfs[rhname].release }}{{ rpm_dist.stdout }}.noarch.rpm"
deps: "{{ zfs.deps }}"
pkgs: "{{ pkgconfig.zfs.pkgs[ansible_os_family] }}"
skip_gpg_check: "{{ rhname == 'fedora' }}"
release: "{{ ansible_distribution_release }}"
gpg_key: "{{ pkgconfig.zfs.gpg_key }}"
gpg_fp: "{{ pkgconfig.zfs.gpg_key_fingerprint }}"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set zig configuration
ansible.builtin.set_fact:
zig:
vers: "{{ pkgconfig.zig.version }}"
path: "zig-{{ pkgconfig.zig.sysmap[ansible_system] }}-{{ pkgconfig.zig.archmap[ansible_architecture] }}-{{ pkgconfig.zig.version }}"
pkg: "zig-{{ pkgconfig.zig.sysmap[ansible_system] }}-{{ pkgconfig.zig.archmap[ansible_architecture] }}-{{ pkgconfig.zig.version }}.tar.xz"
base_url: "{{ pkgconfig.zig.base_url }}"

View File

@@ -1,9 +0,0 @@
# vim: set filetype=yaml.ansible :
---
- name: Set zls config
ansible.builtin.set_fact:
zls:
path: "zls-{{ pkgconfig.zls.sysmap[ansible_system] }}-{{ pkgconfig.zls.archmap[ansible_architecture] }}-{{ pkgconfig.zls.version }}"
pkg: "zls-{{ pkgconfig.zls.sysmap[ansible_system] }}-{{ pkgconfig.zls.archmap[ansible_architecture] }}-{{ pkgconfig.zls.version }}.tar.xz"
vers: "{{ pkgconfig.zls.version }}"
base_url: "{{ pkgconfig.zls.base_url }}"

View File

@@ -104,12 +104,6 @@
- pkg_npm|length > 0 - pkg_npm|length > 0
ansible.builtin.include_tasks: pkgs/nodejs.yml ansible.builtin.include_tasks: pkgs/nodejs.yml
- name: Ensure flatpak is installed
when:
- pkg_flatpak is defined
- pkg_flatpak|length > 0
ansible.builtin.include_tasks: pkgs/flatpak.yml
- name: Ensure appimage path exists - name: Ensure appimage path exists
when: when:
- pkg_appimage is defined - pkg_appimage is defined

47
tasks/pkgs/bitwarden.yml Normal file
View File

@@ -0,0 +1,47 @@
# vim: set filetype=yaml.ansible :
#
## Package: bitwarden
## Description: Desktop GUI for the bitwarden password/secrets manager
## Version: latest
## Methods:
## - flatpak
## - appimage
## Helpers:
## - flatpak
## - appimage
---
- name: Set bitwarden default facts # {{{
ansible.builtin.set_fact:
bitwarden:
install_methods:
- flatpak
- appimage
flatpak:
name: com.bitwarden.desktop
remote: flathub
method: system
appimage_url: https://bitwarden.com/download/?app=desktop&platform=linux&variant=appimage
pkg_deps:
- flatpak
- flathub
# }}}
- name: Configure bitwarden
when:
- "'bitwarden' not in __configured"
block:
- name: Set bitwarden install method
when:
- bitwarden_install_method is undefined
ansible.builtin.set_fact:
bitwarden_install_method: "{{ install_method if install_method in bitwarden.install_methods else bitwarden.install_methods[0] }}"
- name: Set flatpak install facts
when:
- bitwarden_install_method == "flatpak"
block:
- name: Set flatpak package name
ansible.builtin.set_fact:
bitwarden_flatpak:
name: "{{ bitwarden.flatpak.name }}"
remote: "{{ bitwarden.flatpak.remote }}"
method: "{{ bitwarden_flatpak_method | default(flatpak_method) }}"

View File

@@ -1,5 +1,18 @@
# vim: set filetype=yaml.ansible : # vim: set filetype=yaml.ansible :
#
## Package: flatpak
## Description: Universal application runtime for linux
## Version: latest
## Methods:
## - system
--- ---
- name: Set flatpak default facts # {{{
ansible.builtin.set_fact:
flatpak:
install_methods:
- system
pkgname: "{{ pkglist[os_family] }}"
# }}}
- name: Append flatpak to pkg_sys - name: Append flatpak to pkg_sys
when: when:
- ansible_system == 'Linux' - ansible_system == 'Linux'

View File

@@ -1,6 +1,64 @@
# vim: set filetype=yaml.ansible : # vim: set filetype=yaml.ansible :
--- ---
# Default install variables as needed ## Package level variables for per distribution install names
## Format:
## [pkgname]:
## [os_family]:
## name: distro pkgname
## build_deps: [list of deps for building], only included if required
alacritty:
RedHat:
name: alacritty
build_deps:
- fontconfig-devel
- freetype-devel
- g++
- libxcb-devel
- libxkbcommon-devel
- desktop-file-utils
Debian:
name: alacritty
build_deps:
- g++
- pkg-config
- libfontconfig1-dev
- libxcb-xfixes0-dev
- libxkbcommon-dev
- python3
- libfreetype6-dev
- desktop-file-utils
Alpine:
name: alacritty
build_deps:
- pkgconf
- freetype-dev
- fontconfig-dev
- python3
- libxcb-dev
- g++
- libxkbcommon-dev
- desktop-file-utils
Archlinux:
name: alacritty
build_deps:
- freetype2
- fontconfig
- pkg-config
- make
- libxcb
- libxkbcommon
- python
- desktop-file-utils
FreeBSD:
- freetype2
- fontconfig
- pkgconf
- python3
- desktop-file-utils
flatpak:
name: flatpak
## Restrictions for package install methods. ## Restrictions for package install methods.
## The first item is the default method. If only ## The first item is the default method. If only