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