feat: hardware/firmware/gpu/peripherals detection and packages
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
---
|
||||
# OS family lists — single source of truth for platform detection and validation
|
||||
# OS family lists - single source of truth for platform detection and validation
|
||||
os_family_rhel:
|
||||
- almalinux
|
||||
- fedora
|
||||
@@ -10,33 +10,27 @@ os_family_debian:
|
||||
- ubuntu
|
||||
- ubuntu-lts
|
||||
|
||||
# OS → family mapping — aligns with the main project's ansible_os_family pattern.
|
||||
# OS -> family mapping - aligns with the main project's ansible_os_family pattern.
|
||||
# Enables platform_config dict lookups per role instead of inline when: is_rhel chains.
|
||||
os_family_map:
|
||||
almalinux: RedHat
|
||||
alpine: Alpine
|
||||
archlinux: Archlinux
|
||||
debian: Debian
|
||||
fedora: RedHat
|
||||
opensuse: Suse
|
||||
rhel: RedHat
|
||||
rocky: RedHat
|
||||
ubuntu: Debian
|
||||
ubuntu-lts: Debian
|
||||
void: Void
|
||||
|
||||
os_supported:
|
||||
- almalinux
|
||||
- alpine
|
||||
- archlinux
|
||||
- debian
|
||||
- fedora
|
||||
- opensuse
|
||||
- rhel
|
||||
- rocky
|
||||
- ubuntu
|
||||
- ubuntu-lts
|
||||
- void
|
||||
|
||||
# User input. Normalized into hypervisor_cfg + hypervisor_type.
|
||||
hypervisor:
|
||||
@@ -125,7 +119,7 @@ system_defaults:
|
||||
motd: false
|
||||
sudo: true
|
||||
rhel_repo:
|
||||
source: "iso" # iso|satellite|none — how RHEL systems get packages post-install
|
||||
source: "iso" # iso|satellite|none - how RHEL systems get packages post-install
|
||||
url: "" # Satellite/custom repo URL when source=satellite
|
||||
chroot:
|
||||
tool: "arch-chroot" # arch-chroot|chroot|systemd-nspawn
|
||||
@@ -133,8 +127,11 @@ system_defaults:
|
||||
generator: "" # auto-detected; override: dracut|mkinitcpio|initramfs-tools
|
||||
desktop:
|
||||
enabled: false
|
||||
environment: "" # gnome|kde|xfce|sway|hyprland|cinnamon|mate|lxqt|budgie
|
||||
display_manager: "" # auto from environment when empty; override: gdm|sddm|lightdm|greetd
|
||||
environment: "" # gnome|kde|sway|hyprland
|
||||
display_manager: "" # auto from environment when empty; override: gdm|sddm|greetd
|
||||
autologin: false # false | username from system.users
|
||||
session: "" # session name/command for the autologin user
|
||||
groups: [] # opt-in package groups (keys of desktop_package_groups)
|
||||
secure_boot:
|
||||
enabled: false
|
||||
method: "" # arch only: sbctl (default) or uki; ignored for other distros
|
||||
@@ -142,7 +139,7 @@ system_defaults:
|
||||
enabled: "auto" # auto = on for physical, off for virtual
|
||||
microcode: "auto"
|
||||
gpu:
|
||||
enabled: false
|
||||
enabled: "auto" # auto = follows desktop.enabled
|
||||
nvidia_driver: "auto" # auto | open | proprietary | nouveau
|
||||
peripherals:
|
||||
enabled: "auto" # auto = follows desktop.enabled
|
||||
@@ -152,7 +149,7 @@ system_defaults:
|
||||
hardware:
|
||||
profile: {} # empty = autodetect; set to override (golden image)
|
||||
|
||||
# Per-hypervisor required fields — drives data-driven validation.
|
||||
# Per-hypervisor required fields - drives data-driven validation.
|
||||
# All virtual types additionally require network bridge or interfaces.
|
||||
hypervisor_required_fields:
|
||||
proxmox:
|
||||
@@ -176,7 +173,7 @@ hypervisor_disk_device_map:
|
||||
proxmox: "/dev/sd"
|
||||
vmware: "/dev/sd"
|
||||
|
||||
# Mountpoints managed by the partitioning role — forbidden for extra disks.
|
||||
# Mountpoints managed by the partitioning role - forbidden for extra disks.
|
||||
reserved_mounts:
|
||||
- /boot
|
||||
- /boot/efi
|
||||
|
||||
Reference in New Issue
Block a user