71 lines
1.9 KiB
Markdown
71 lines
1.9 KiB
Markdown
Role Name
|
|
=========
|
|
|
|
Manage package installation for a number of packages
|
|
that sometimes need special handling. Some are built from
|
|
source, some are appimages, some are special sources like
|
|
`cargo`, `npm`, `go`, etc.
|
|
|
|
When defining a workstation role, I had a lot of packages that needed
|
|
special instructions to properly install and use. I decided to
|
|
simplify the management of those packages by creating a role with
|
|
special handling.
|
|
|
|
Included packages:
|
|
|
|
- Desktop applications: alacritty, firefox, ghostty, kitty, neovide
|
|
- Shell applications: btop, carapace, nushell, fzf, jq, neovim, pipx, ripgrep,
|
|
stow, tmux, zoxide
|
|
- Infrastructure applications: ansible, consul, nomad, packer, terraform
|
|
- Development tools: cmake, git, go, nodejs, hugo, rust, tidy
|
|
- Misc: editorconfig, hashicorp package repository, nerdfonts, pandoc,
|
|
pytho3-pip, terra repository for fedora, zfs
|
|
- Cargo packages: dotenv-linter, eza, htmx-lsp, starship
|
|
- Go packages: air, buf, checkmake, glow, lazygit, revive, templ, gopls
|
|
- NPM packages: ansible-language-server, commitlint-cli,
|
|
commitlint-config-conventional, markdownlint-cli, quobix-vacuum,
|
|
tailwindcss-languageserver
|
|
- Pipx packages: cmakelang, sqlfluff
|
|
|
|
Requirements
|
|
------------
|
|
|
|
|
|
Role Variables
|
|
--------------
|
|
|
|
- packages:
|
|
- List of packages to install
|
|
- assume_missing_is_syspkg:
|
|
- Bool. Default `true`
|
|
- Handle non-supported packages as package manager packages
|
|
- full_upgrade:
|
|
- Bool. Default `false`
|
|
- Do a full package upgrade first if `true`
|
|
- install_state:
|
|
- String. Default `present`
|
|
- Set to `latest` to update packages
|
|
- Set to `absent` to remove packages
|
|
- *currently only supports remove package manager installed packages*
|
|
- Valid choices: `present`, `latest`, `absent`
|
|
- pkgconfig:
|
|
- specific configuration for individual packages
|
|
|
|
Dependencies
|
|
------------
|
|
|
|
|
|
Example Playbook
|
|
----------------
|
|
|
|
|
|
License
|
|
-------
|
|
|
|
MIT
|
|
|
|
Author Information
|
|
------------------
|
|
|
|
- Matthew Stobbs
|