name: minimal-test
description: Minimal test system - just the basics to verify core functionality
base-image: debian:trixie-slim
image-version: "13"

stages:
  - type: org.osbuild.debian.apt
    options:
      packages:
        # Absolute minimum packages
        - curl
        - wget
        - vim
        - less
        - locales
        - ca-certificates
        - tzdata
        
        # Kernel and boot essentials
        - linux-image-amd64
        - linux-headers-amd64
        - initramfs-tools
        - grub-pc
        - grub2-common
        
        # Basic system tools
        - systemd
        - systemd-sysv
        - udev
        - procps
        - util-linux
        - mount
        - passwd
        - login
        - bash
        - coreutils
      update: true
      clean: true
      
  - type: org.osbuild.debian.locale
    options:
      language: en_US.UTF-8
      default_locale: en_US.UTF-8
      
  - type: org.osbuild.debian.timezone
    options:
      timezone: UTC
      
  - type: org.osbuild.debian.users
    options:
      users:
        testuser:
          password: "$6$rounds=656000$salt$hashedpassword"
          shell: /bin/bash
          groups: ["users"]
          uid: 1000
          gid: 1000
          home: /home/testuser
          comment: "Test User"
      default_shell: /bin/bash
      default_home: /home
      
  - type: org.osbuild.qemu
    options:
      formats: ["raw"]
      size: "5G"
      filename: "minimal-test"

output:
  formats: ["raw"]
  size: "5G"
  path: "minimal-test"

metadata:
  author: "particle-os"
  category: "testing"
  tags: ["minimal", "testing", "core-functionality", "bootable"]
  description: "Minimal test system to verify core particle-os functionality"
  target_audience: "Developers, testing, core functionality validation"
  based_on: "debian:trixie-slim"
