Files
computer-playbook/roles/pkgmgr-install
kevinveenbirkenbachandClaude Opus 4.7 2a023ca6a1 chore(lint): autoformat strict-failure semantics + claude.sh rename
* scripts/lint/autoformat.sh:
  - rename run_sort_claude_settings worker to run_claude (matches the
    renamed scripts/lint/claude.sh).
  - drop the EXIT trap that wiped status_dir; cleanup happens explicitly
    after `wait` returns, so a parallel worker that interrupts the
    parent never races a vanished status dir.
  - each worker now captures its tool's exit code and writes one of
    OK / SKIP / FAIL. Tolerated `expected violations remain`-style exits
    (markdownlint-cli2 rc≤1, ansible-lint rc≤2) still count as OK; only
    real failures count as FAIL.
  - all workers run to completion regardless of individual tool failures
    (so the user always sees the full picture); after the summary, the
    script exits 1 if any worker reported FAIL.
* scripts/lint/sort_claude_settings.sh -> scripts/lint/claude.sh
  (history preserved via git mv); update test_claude_settings_sorted.py
  fix-hint accordingly.

Plus working-tree drift across roles/, group_vars/, inventories/,
requirements/, and .pre-commit-config.yaml accumulated from the
make-test setup phase regenerating generated artefacts during recent
test runs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 01:30:49 +02:00
..

Package Manager Installation

Description

This Ansible role installs Kevin's Package Manager and updates packages using pkgmgr on Arch Linux systems. It provides a unified interface for package installation and update management, ensuring consistent deployment across environments.

Overview

The role abstracts package management operations using pkgmgr. It ensures the package manager itself is updated once per run and provides idempotent installation and update routines for specified packages.

Purpose

The purpose of this role is to automate the installation and update process for Infinito.Nexus-related applications or other managed packages using pkgmgr. It simplifies package handling and enforces best practices for package deployment in automated environments.

Features

  • Automatic pkgmgr Update: Ensures the package manager is always up-to-date.
  • Idempotent Package Installation: Only installs packages when necessary.
  • Flexible Notification: Supports handler notification for post-install actions (e.g., Docker Compose builds).
  • Optional Privilege Escalation: Controlled via the pkgmgr_become variable (default: true).

Role Variables

Name Description Default
package_name Name of the package to install/update (required)
package_notify Handler to notify on package installation/update ""

Credits

Developed and maintained by Kevin Veen-Birkenbach. Learn more at veen.world. Part of the Infinito.Nexus Project. Licensed under the Infinito.Nexus Community License (Non-Commercial).