Files
computer-playbook/roles/dev-java
kevinveenbirkenbachandClaude Opus 5 53c120aaac refactor(dsk): rename the desktop tier and give its agents a category
Every desk- role becomes dsk-, and the three coding agents move to dsk-gnt- under a category of their own. The category carries a title, hanzi and icon but no invokable flag: an invokable child under an invokable parent is rejected outright, which is also why web itself is not invokable.

Three things a search and replace would have broken without a sound. get_entity_name now strips dsk-gnt-, so the primary entity keys agnt-claude, agnt-cursor and agnt-pi no longer resolved and all three roles dropped out of the CI plan. Eighteen run_once guards carried the old name against a convention its own test enforces. DESKTOP_ROLE_PREFIX in the addon spec lint is a literal, so the desktop exemption it grants would have matched nothing and the lint would have moved to the wrong rule in silence.

docs/requirements/035 is not a historical document but a register a lint holds to every role with an application_id, so its list carries the new ids. In 026 only the links move; the prose stays as a statement about the tree at the time it was written.

Measured against the plan with the rename normalised, the deployed role#variant set is unchanged. A stale id in an inventory is caught before any deploy starts: the pre-flight validator reports Invalid group 'desk-firefox' (not in application_ids).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-24 22:15:41 +02:00
..
…
…

Java

Description

Installs OpenJDK 11 (jdk11-openjdk) on Pacman-based systems to provide a Java runtime and development environment.

Overview

This README file is for the Java role, which is part of the infinito. The role is specifically designed to automate the installation of Java on a system, focusing on the OpenJDK 11 version.

Cosmos

The diagram places Java in the Infinito.Nexus cosmos: the components it deploys (capabilities), the central services it consumes (dependencies), and its outward reach (federation and bridged external networks).

flowchart LR
    subgraph role [dev-java 💻]
        svc_java["java"]
    end
    subgraph dependents [Dependents]
        dpt_dsk_bluray_player["dsk-bluray-player 💻 ⚙️"]
    end
    svc_java -- "1:1" --> dpt_dsk_bluray_player

Solid 1:1 edges are fixed relationships; dashed 0..1 edges are conditional (enabled only in matching deployments); red 0..0 edges are turned off in this role. Node markers show the role's deploy modes (💻 host, 🐳 compose, 🐝 swarm); ❌ marks a service that is explicitly turned off, and ⚙️ an Ansible role dependency declared in meta/main.yml.

Features

  • Automated provisioning: Configured by Ansible without manual steps.

Contents of the role

The main.yml file within the java role consists of a single, but crucial task:

  1. Install Java: This task uses the community.general.pacman module to install the jdk11-openjdk package. It ensures that Java Development Kit 11 (OpenJDK 11) is present on the system.

Purpose

The primary objective of this role is to provide a straightforward and efficient method for setting up Java, specifically JDK 11, on personal computers or development environments. This setup is essential for developers who work with Java or run applications that require the Java runtime environment.

Prerequisites

  • Ansible: You need to have Ansible installed on your system to use this role.
  • Arch Linux-based System: The role uses the pacman package manager, indicating that it is intended for use on systems based on Arch Linux or its derivatives.

Running the role

To run this role:

  1. Clone the computer-role repository to your system.
  2. Navigate to the roles/java directory within the repository.
  3. Execute the role using Ansible. Make sure you have the necessary permissions to install packages on your system.

Customization

This role is focused on installing JDK 11, but it can be easily modified to install different versions of the JDK or additional Java-related tools as per your requirements.

Support and Contribution

For support, feedback, or contributions to the role, please open an issue or submit a pull request in the infinito repository. Contributions that enhance the role or broaden its applicability are greatly appreciated.

Credits

Implemented by Kevin Veen-Birkenbach. Part of the Infinito.Nexus Project and maintained by Kevin Veen-Birkenbach. Licensed under the Infinito.Nexus Community License (Non-Commercial).