add archlinux installation methods
This commit is contained in:
@@ -10,7 +10,12 @@
|
||||
ansible.builtin.set_fact:
|
||||
choose:
|
||||
methods:
|
||||
- source
|
||||
Archlinux: [system, source]
|
||||
default: [source]
|
||||
- name: Finalise choose default facts
|
||||
ansible.builtin.set_fact:
|
||||
choose:
|
||||
methods: "{{ choose.methods[os_family] | default(choose.methods.defualt) }}"
|
||||
version: 1.3.7
|
||||
# }}}
|
||||
- name: Configure choose
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
Debian: clang-12
|
||||
Darwin: llvm
|
||||
Alpine: clang19
|
||||
Archlinux: clang
|
||||
# }}}
|
||||
- name: Configure clangd
|
||||
when:
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
Alpine: direnv
|
||||
Debian: direnv
|
||||
Darwin: direnv
|
||||
Archlinux: direnv
|
||||
install_url: github.com/direnv/direnv
|
||||
pkg_deps:
|
||||
- go
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
Darwin: fd
|
||||
Alpine: fd
|
||||
FreeBSD: fd-find
|
||||
Archlinux: fd
|
||||
# }}}
|
||||
- name: Configure fd
|
||||
when:
|
||||
|
||||
@@ -9,93 +9,62 @@
|
||||
- name: Set ghostty default facts # {{{
|
||||
ansible.builtin.set_fact:
|
||||
ghostty:
|
||||
version: 1.3.1
|
||||
base_url: https://releases.files.ghostty.org
|
||||
# install methods per distribution
|
||||
default:
|
||||
methods:
|
||||
- source
|
||||
pkg_deps: &pkgdeps
|
||||
- zig
|
||||
Archlinux: [system, source, appimage]
|
||||
Alpine: [system, source, appimage]
|
||||
default: [source, appimage]
|
||||
pkgname:
|
||||
Archlinux: ghostty
|
||||
default: ghostty
|
||||
build_deps:
|
||||
default:
|
||||
- gtk4
|
||||
- libadwaita
|
||||
- gtk4-layer-shell
|
||||
- pkgconf
|
||||
- gettext
|
||||
Redhat: &redhat
|
||||
methods:
|
||||
- source
|
||||
- appimage
|
||||
pkg_deps: *pkgdeps
|
||||
build_deps:
|
||||
RedHat:
|
||||
- gtk4-devel
|
||||
- gtk4-layer-shell-devel
|
||||
- libadwaita-devel
|
||||
- gettext
|
||||
AlmaLinux: *redhat
|
||||
CentOS: *redhat
|
||||
Rocky: *redhat
|
||||
Debian: &debian
|
||||
methods:
|
||||
- source
|
||||
- appimage
|
||||
pkg_deps: *pkgdeps
|
||||
build_deps:
|
||||
Debian:
|
||||
- libgtk-4-dev
|
||||
- libgtk4-layer-shell-dev
|
||||
- libadwaita-1-dev
|
||||
- gettext
|
||||
- libxml2-utils
|
||||
Ubuntu: *debian
|
||||
Raspbian: *debian
|
||||
Linux Mint: *debian
|
||||
Archlinux: &arch
|
||||
methods:
|
||||
- system
|
||||
- source
|
||||
- appimage
|
||||
pkg_deps: *pkgdeps
|
||||
build_deps:
|
||||
Archlinux:
|
||||
- gtk4
|
||||
- gtk4-layer-shell
|
||||
- libadwaita
|
||||
- gettext
|
||||
pkgname: ghostty
|
||||
Majaro: *arch
|
||||
Fedora:
|
||||
methods:
|
||||
- source
|
||||
- appimage
|
||||
pkg_deps: *pkgdeps
|
||||
build_deps:
|
||||
- gtk4-devel
|
||||
- gtk4-layer-shell-devel
|
||||
- libadwaita-devel
|
||||
- gettext
|
||||
Alpine:
|
||||
methods:
|
||||
- system
|
||||
- source
|
||||
- appimage
|
||||
pkg_deps: *pkgdeps
|
||||
build_deps:
|
||||
- gtk4.0-dev
|
||||
- libadwaita-dev
|
||||
- pkgconf
|
||||
- ncurses
|
||||
- gettext
|
||||
pkgname: ghostty
|
||||
|
||||
- name: Finalise ghostty default facts
|
||||
ansible.builtin.set_fact:
|
||||
ghostty:
|
||||
version: 1.3.1
|
||||
base_url: https://releases.files.ghostty.org
|
||||
methods: "{{ ghostty.methods[os_family] | default(ghostty.methods.default) }}"
|
||||
pkg_deps: [zig]
|
||||
pkgname: "{{ ghostty.pkgname[os_family] | default(ghostty.pkgname.default) }}"
|
||||
build_deps: "{{ ghostty.build_deps[os_family] | default(ghostty.build_deps.default) }}"
|
||||
# }}}
|
||||
- name: Set ghostty facts
|
||||
ansible.builtin.set_fact:
|
||||
ghostty:
|
||||
version: "{{ ghostty_version | default(ghostty.version) }}"
|
||||
methods: "{{ ghostty[distribution].methods | default(_methods['default']) }}"
|
||||
methods: "{{ ghostty.methods }}"
|
||||
source_url: "{{ ghostty.base_url }}/{{ ghostty.version }}/ghostty-{{ ghostty.version }}.tar.gz"
|
||||
archive: "ghostty-{{ ghostty.version }}.tar.gz"
|
||||
pkg_deps: "{{ ghostty[distribution].pkg_deps | default(omit) }}"
|
||||
build_deps: "{{ ghostty[distribution].build_deps | default(ghostty.default.build_deps) }}"
|
||||
pkg_deps: "{{ ghostty.pkg_deps | default(omit) }}"
|
||||
build_deps: "{{ ghostty.build_deps }}"
|
||||
|
||||
- name: Configure ghostty
|
||||
block:
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
RedHat: go
|
||||
Debian: go
|
||||
Darwin: go
|
||||
Archlinux: go
|
||||
FreeBSD:
|
||||
default: go
|
||||
1.26: go126
|
||||
|
||||
@@ -9,6 +9,16 @@
|
||||
- name: Set lazygit default facts # {{{
|
||||
ansible.builtin.set_fact:
|
||||
lazygit:
|
||||
methods:
|
||||
Archlinux: [system, source]
|
||||
default: [source]
|
||||
pkgname:
|
||||
default: lazygit
|
||||
- name: Finalise lazygit default facts
|
||||
ansible.builtin.set_fact:
|
||||
lazygit:
|
||||
methods: "{{ lazygit.methods[os_family] | default(lazygit.methods.default) }}"
|
||||
pkgname: "{{ lazygit.pkgname[os_family] | default(lazygit.pkgname.default) }}"
|
||||
url: github.com/jesseduffield/lazygit
|
||||
version: "{{ lazygit_version | default('latest') }}"
|
||||
pkg_deps:
|
||||
@@ -22,6 +32,15 @@
|
||||
ansible.builtin.set_fact:
|
||||
lazygit_imethod: "{{ imethod if imethod in lazygit.methods else lazygit.methods[0] }}"
|
||||
|
||||
- name: Configure lazygit system install
|
||||
when:
|
||||
- lazygit_imethod == 'system'
|
||||
block:
|
||||
- name: Queue lazygit system install
|
||||
ansible.builtin.set_fact:
|
||||
pkg_sys: "{{ pkg_sys + [lazygit.pkgname] }}"
|
||||
lazygit_install: "{{ lazygit_imethod }}={{ lazygit.pkgname }}"
|
||||
|
||||
- name: Configure lazygit source install
|
||||
when:
|
||||
- lazygit_imethod == 'source'
|
||||
|
||||
@@ -10,19 +10,47 @@
|
||||
ansible.builtin.set_fact:
|
||||
neovim:
|
||||
methods:
|
||||
- source
|
||||
- system
|
||||
- appimage
|
||||
- archive
|
||||
default: [system, source, appimage, archive]
|
||||
pkgname:
|
||||
default: neovim
|
||||
build_deps:
|
||||
Archlinux:
|
||||
- base-devel
|
||||
- ninja
|
||||
- curl
|
||||
RedHat:
|
||||
- curl
|
||||
- gcc
|
||||
- gettext
|
||||
- glibc-gconv-extra
|
||||
- make
|
||||
- ninja-build
|
||||
Debian:
|
||||
- build-essential
|
||||
- curl
|
||||
- gettext
|
||||
- ninja-build
|
||||
Darwin:
|
||||
- curl
|
||||
- gettext
|
||||
- ninja
|
||||
Alpine:
|
||||
- build-base
|
||||
- coreutils
|
||||
- curl
|
||||
- gettext-dev
|
||||
|
||||
- name: Finalise neovim default facts
|
||||
ansible.builtin.set_fact:
|
||||
neovim:
|
||||
methods: "{{ neovim.methods[os_family] | neovim.methods.default }}"
|
||||
git_repo: https://github.com/neovim/neovim
|
||||
appimage:
|
||||
base_url: https://github.com/neovim/neovim/releases/download
|
||||
pkg_deps:
|
||||
- cmake
|
||||
version: v0.12.1
|
||||
pkgname:
|
||||
RedHat: neovim
|
||||
Debian: neovim
|
||||
Darwin: neovim
|
||||
FreeBSD: neovim
|
||||
pkgname: "{{ neovim.pkgname[os_family] | neovim.pkgname.default }}"
|
||||
build_files:
|
||||
- to: lib64/nvim
|
||||
- to: bin/nvim
|
||||
@@ -33,32 +61,7 @@
|
||||
build_pkgdeps:
|
||||
- cmake
|
||||
- git
|
||||
build_deps:
|
||||
RedHat:
|
||||
- cmake
|
||||
- curl
|
||||
- gcc
|
||||
- gettext
|
||||
- glibc-gconv-extra
|
||||
- make
|
||||
- ninja-build
|
||||
Debian:
|
||||
- build-essential
|
||||
- cmake
|
||||
- curl
|
||||
- gettext
|
||||
- ninja-build
|
||||
Darwin:
|
||||
- cmake
|
||||
- curl
|
||||
- gettext
|
||||
- ninja
|
||||
Alpine:
|
||||
- build-base
|
||||
- cmake
|
||||
- coreutils
|
||||
- curl
|
||||
- gettext-dev
|
||||
build_deps: "{{ neovim.build_deps[os_family] | neovim.build_deps.default }}"
|
||||
# }}}
|
||||
- name: Configure neovim
|
||||
when:
|
||||
|
||||
@@ -6,17 +6,21 @@
|
||||
## Methods: system
|
||||
## Helpers: -
|
||||
---
|
||||
- name: Set nodejs default facts
|
||||
- name: Set nodejs default facts # {{{
|
||||
ansible.builtin.set_fact:
|
||||
nodejs:
|
||||
methods:
|
||||
- system
|
||||
pkgname:
|
||||
Archlinux:
|
||||
- nodejs
|
||||
- npm
|
||||
RedHat:
|
||||
- nodejs
|
||||
FreeBSD:
|
||||
- node
|
||||
- npm
|
||||
# }}}
|
||||
- name: Configure nodejs
|
||||
when:
|
||||
- "'nodejs' not in __configured"
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
pkgname:
|
||||
RedHat: ripgrep
|
||||
Debian: ripgrep
|
||||
Archlinux: ripgrep
|
||||
# }}}
|
||||
- name: Configure ripgrep
|
||||
when:
|
||||
|
||||
@@ -10,11 +10,15 @@
|
||||
ansible.builtin.set_fact:
|
||||
stow:
|
||||
methods:
|
||||
- system
|
||||
- source
|
||||
Archlinux: [system, source]
|
||||
default: [source]
|
||||
pkgname:
|
||||
RedHat: stow
|
||||
Archlinux: stow
|
||||
default: stow
|
||||
- name: Finalise stow default facts
|
||||
ansible.builtin.set_fact:
|
||||
stow:
|
||||
methods: "{{ stow.methods[os_family] | stow.methods.default }}"
|
||||
pkgname: "{{ stow.pkgname[os_family] | stow.pkgname.default }}"
|
||||
baseurl: https://ftp.gnu.org/gnu/stow
|
||||
version: 2.4.1
|
||||
# }}}
|
||||
|
||||
@@ -6,11 +6,16 @@
|
||||
## Methods: [source]
|
||||
## Helpers: [cargo_build]
|
||||
---
|
||||
- name: Configure yazi installation # {{{
|
||||
- name: Set yazi default facts # {{{
|
||||
ansible.builtin.set_fact:
|
||||
yazi:
|
||||
methods:
|
||||
- source
|
||||
default: [source]
|
||||
Archlinux: [system, source]
|
||||
- name: Finalise yazi default facts
|
||||
ansible.builtin.set_fact:
|
||||
yazi:
|
||||
methods: "{{ yazi.methods[os_family] | default(yazi.methods.default) }}"
|
||||
version: 26.1.22
|
||||
git:
|
||||
repo: https://github.com/sxyazi/yazi.git
|
||||
@@ -53,6 +58,15 @@
|
||||
ansible.builtin.set_fact:
|
||||
yazi_imethod: "{{ imethod if imethod in yazi.methods else yazi.methods[0] }}"
|
||||
|
||||
- name: Configure yazi system install
|
||||
when:
|
||||
- yazi_imethod == 'system'
|
||||
block:
|
||||
- name: Queue yazi system install
|
||||
ansible.builtin.set_fact:
|
||||
pkg_sys: "{{ pkg_sys + [yazi.pkgname] }}"
|
||||
yazi_install: "{{ yazi_imethod }}={{ yazi.pkgname }}"
|
||||
|
||||
- name: Configure yazi source install
|
||||
when:
|
||||
- yazi_imethod == 'source'
|
||||
|
||||
@@ -8,9 +8,18 @@
|
||||
---
|
||||
- name: Set zig default facts
|
||||
ansible.builtin.set_fact:
|
||||
zig:
|
||||
methods:
|
||||
- archive
|
||||
- system
|
||||
default: [archive]
|
||||
Archlinux: [system, archive]
|
||||
pkgname:
|
||||
default: zig
|
||||
|
||||
- name: Finalise zig default facts
|
||||
ansible.builtin.set_fact:
|
||||
zig:
|
||||
methods: "{{ zig.methods[os_family] | default(zig.methods.default) }}"
|
||||
pkgname: "{{ zig.pkgname[os_family] | default(zig.pkgname.default) }}"
|
||||
version: "{{ zig_version | default('0.15.2') }}"
|
||||
archive:
|
||||
url: https://ziglang.org/download
|
||||
@@ -29,7 +38,8 @@
|
||||
when:
|
||||
- zig_imethod == 'system'
|
||||
ansible.builtin.set_fact:
|
||||
pkg_sys: "{{ pkg_sys + [zig.pkgname[os_family]] }}"
|
||||
pkg_sys: "{{ pkg_sys + [zig.pkgname] }}"
|
||||
zig_install: "{{ zig_imethod }}={{ zig.pkgname }}"
|
||||
|
||||
- name: Configure zig archive install
|
||||
when:
|
||||
|
||||
Reference in New Issue
Block a user