Initial commit

This commit is contained in:
robojerk 2025-08-11 08:59:41 -07:00
commit 3326d796f0
87 changed files with 15792 additions and 0 deletions

View file

@ -0,0 +1 @@
centos-10.yaml

View file

@ -0,0 +1 @@
centos-9.yaml

View file

@ -0,0 +1 @@
fedora-40.yaml

View file

@ -0,0 +1 @@
centos-10.yaml

View file

@ -0,0 +1 @@
fedora-40.yaml

View file

@ -0,0 +1 @@
fedora-40.yaml

View file

@ -0,0 +1,93 @@
anaconda-iso:
packages:
- "@hardware-support"
- alsa-firmware
- alsa-tools-firmware
- anaconda
- anaconda-dracut
- anaconda-install-img-deps
- anaconda-widgets
- audit
- bind-utils
- bzip2
- cryptsetup
- curl
- dbus-x11
- dejavu-sans-fonts
- dejavu-sans-mono-fonts
- device-mapper-persistent-data
- dmidecode
- dnf
- dracut-config-generic
- dracut-network
- efibootmgr
- ethtool
- fcoe-utils
- ftp
- gdb-gdbserver
- glibc-all-langpacks
- gnome-kiosk
- google-noto-sans-cjk-ttc-fonts
- grub2-tools
- grub2-tools-extra
- grub2-tools-minimal
- grubby
- gsettings-desktop-schemas
- hdparm
- hexedit
- hostname
- initscripts
- ipmitool
- jomolhari-fonts
- kbd
- kbd-misc
- kdump-anaconda-addon
- kernel
- less
- libblockdev-lvm-dbus
- libibverbs
- librsvg2
- linux-firmware
- lldpad
- lsof
- madan-fonts
- mt-st
- mtr
- net-tools
- nfs-utils
- nm-connection-editor
- nmap-ncat
- nss-tools
- openssh-clients
- openssh-server
- ostree
- pciutils
- perl-interpreter
- pigz
- plymouth
- prefixdevname
- python3-pyatspi
- rdma-core
- rng-tools
- rpcbind
- rpm-ostree
- rsync
- rsyslog
- selinux-policy-targeted
- sg3_utils
- sil-padauk-fonts
- smartmontools
- spice-vdagent
- strace
- systemd
- tar
- udisks2
- udisks2-iscsi
- usbutils
- vim-minimal
- volume_key
- wget
- xfsdump
- xfsprogs
- xrdb
- xz

108
bib/data/defs/centos-9.yaml Normal file
View file

@ -0,0 +1,108 @@
anaconda-iso:
# This is the same set as the Fedora one, but without packages not available in CentOS/RHEL:
# atheros-firmware, brcmfmac-firmware, iwlwifi-dvm-firmware, iwlwifi-mvm-firmware, realtek-firmware, rit-meera-new-fonts
packages:
- aajohan-comfortaa-fonts
- abattis-cantarell-fonts
- alsa-firmware
- alsa-tools-firmware
- anaconda
- anaconda-dracut
- anaconda-install-env-deps
- anaconda-widgets
- audit
- bind-utils
- bitmap-fangsongti-fonts
- bzip2
- cryptsetup
- curl
- dbus-x11
- dejavu-sans-fonts
- dejavu-sans-mono-fonts
- device-mapper-persistent-data
- dmidecode
- dnf
- dracut-config-generic
- dracut-network
- efibootmgr
- ethtool
- fcoe-utils
- ftp
- gdb-gdbserver
- gdisk
- glibc-all-langpacks
- gnome-kiosk
- google-noto-sans-cjk-ttc-fonts
- grub2-tools
- grub2-tools-extra
- grub2-tools-minimal
- grubby
- gsettings-desktop-schemas
- hdparm
- hexedit
- hostname
- initscripts
- ipmitool
- jomolhari-fonts
- kbd
- kbd-misc
- kdump-anaconda-addon
- kernel
- khmeros-base-fonts
- less
- libblockdev-lvm-dbus
- libibverbs
- libreport-plugin-bugzilla
- libreport-plugin-reportuploader
- librsvg2
- linux-firmware
- lldpad
- lsof
- madan-fonts
- mt-st
- mtr
- net-tools
- nfs-utils
- nm-connection-editor
- nmap-ncat
- nss-tools
- openssh-clients
- openssh-server
- ostree
- pciutils
- perl-interpreter
- pigz
- plymouth
- prefixdevname
- python3-pyatspi
- rdma-core
- rng-tools
- rpcbind
- rpm-ostree
- rsync
- rsyslog
- selinux-policy-targeted
- sg3_utils
- sil-abyssinica-fonts
- sil-padauk-fonts
- smartmontools
- spice-vdagent
- strace
- systemd
- tar
- tigervnc-server-minimal
- tigervnc-server-module
- udisks2
- udisks2-iscsi
- usbutils
- vim-minimal
- volume_key
- wget
- xfsdump
- xfsprogs
- xorg-x11-drivers
- xorg-x11-fonts-misc
- xorg-x11-server-Xorg
- xorg-x11-xauth
- xrdb
- xz

View file

@ -0,0 +1,424 @@
# Debian 13 (Trixie) Distribution Definition
# This file defines the osbuild pipeline for creating Debian-based images
# QCOW2 image type - bootable virtual machine image
qcow2:
# Core packages required for a minimal bootable Debian system
packages:
# Essential system packages
- linux-image-amd64
- linux-headers-amd64
- systemd
- systemd-sysv
- dbus
- dbus-user-session
# Boot and filesystem tools
- initramfs-tools
- grub-efi-amd64
- efibootmgr
- util-linux
- parted
- e2fsprogs
- dosfstools
# OSTree integration
- ostree
- ostree-grub2
# Basic system utilities
- sudo
- bash
- coreutils
- findutils
- grep
- sed
- gawk
- tar
- gzip
- bzip2
- xz-utils
# Network and connectivity
- network-manager
- systemd-resolved
- openssh-server
- curl
- wget
# Package management
- apt
- apt-utils
- ca-certificates
- gnupg
# Security and authentication
- passwd
- shadow
- libpam-modules
- libpam-modules-bin
# Locale and internationalization
- locales
- keyboard-configuration
- console-setup
# Hardware support
- udev
- kmod
- pciutils
- usbutils
# Logging and monitoring
- rsyslog
- logrotate
# Time and date
- systemd-timesyncd
- tzdata
# osbuild stages that define the build pipeline
stages:
# Stage 1: Set up Debian filesystem structure
- name: org.osbuild.debian-filesystem
options:
# Debian-specific filesystem layout
rootfs_type: ext4
# OSTree integration points
ostree_integration: true
# Create /home -> /var/home symlink for immutable architecture
home_symlink: true
# Stage 2: Install packages using APT
- name: org.osbuild.apt
options:
# Use the packages list defined above
packages: ${packages}
# Debian release
release: trixie
# Target architecture
arch: amd64
# Repository configuration
repos:
- name: debian
url: http://deb.debian.org/debian
suite: trixie
components: [main, contrib, non-free]
- name: debian-security
url: http://deb.debian.org/debian-security
suite: trixie-security
components: [main, contrib, non-free]
- name: debian-updates
url: http://deb.debian.org/debian
suite: trixie-updates
components: [main, contrib, non-free]
# Stage 3: Handle kernel and initramfs
- name: org.osbuild.debian-kernel
options:
# Kernel package to use
kernel_package: linux-image-amd64
# Generate initramfs with OSTree support
initramfs_tools: true
# OSTree integration
ostree_integration: true
# Kernel module handling
modules_autoload: true
# Stage 4: Configure GRUB bootloader
- name: org.osbuild.debian-grub
options:
# GRUB configuration for OSTree
ostree_integration: true
# UEFI boot support
uefi: true
# Secure Boot support
secure_boot: false
# Boot timeout
timeout: 5
# Default boot entry
default_entry: 0
# Stage 5: System configuration
- name: org.osbuild.debian-system-config
options:
# Set up systemd services
systemd_services:
- systemd-timesyncd
- systemd-resolved
- NetworkManager
- ssh
# Configure networking
networking: true
# Set up users and groups
users:
- name: root
password: locked
- name: debian
password: locked
groups: [sudo, users]
# Configure locale
locale: en_US.UTF-8
# Configure timezone
timezone: UTC
# Desktop image type - includes desktop environment
desktop:
# Inherit all packages from qcow2
packages:
# Include all qcow2 packages
- ${qcow2.packages}
# Desktop environment packages
- task-kde-desktop
- sddm
- plasma-desktop
- kde-applications
- firefox-esr
- libreoffice
- gimp
- vlc
- transmission-gtk
- file-roller
- gparted
- synaptic
- software-properties-kde
# Additional desktop utilities
- konsole
- dolphin
- kate
- krunner
- kwin
- plasma-nm
- plasma-pa
- powerdevil
- bluedevil
- kscreen
- khotkeys
- kmenuedit
- kcmshell5
- systemsettings
# Inherit stages from qcow2 and add desktop-specific stages
stages:
# Include all qcow2 stages
- ${qcow2.stages}
# Additional desktop configuration
- name: org.osbuild.debian-desktop-config
options:
# Desktop environment setup
desktop_environment: kde
# Display manager configuration
display_manager: sddm
# User session setup
user_sessions: true
# Desktop applications configuration
applications: true
# Theme and appearance
theme: breeze
# Default applications
default_apps:
browser: firefox-esr
file_manager: dolphin
terminal: konsole
text_editor: kate
# Server image type - minimal server configuration
server:
# Inherit core packages from qcow2
packages:
# Include essential qcow2 packages
- linux-image-amd64
- linux-headers-amd64
- systemd
- systemd-sysv
- dbus
- initramfs-tools
- grub-efi-amd64
- efibootmgr
- util-linux
- parted
- e2fsprogs
- dosfstools
- ostree
- ostree-grub2
- sudo
- bash
- coreutils
- network-manager
- systemd-resolved
- openssh-server
- curl
- wget
- apt
- apt-utils
- ca-certificates
- locales
- udev
- kmod
- rsyslog
- systemd-timesyncd
- tzdata
# Server-specific packages
- nginx
- apache2
- mariadb-server
- postgresql
- redis-server
- fail2ban
- ufw
- htop
- iotop
- nethogs
- iftop
- tcpdump
- nmap
- vim
- git
- python3
- python3-pip
- nodejs
- npm
# Inherit stages from qcow2 and add server-specific stages
stages:
# Include all qcow2 stages
- ${qcow2.stages}
# Additional server configuration
- name: org.osbuild.debian-server-config
options:
# Server hardening
security_hardening: true
# Firewall configuration
firewall: ufw
# SSH configuration
ssh:
port: 22
root_login: false
key_auth_only: false
# Service configuration
services:
- nginx
- apache2
- mariadb
- postgresql
- redis
- fail2ban
# Monitoring setup
monitoring: true
# Logging configuration
logging: rsyslog
# Development image type - includes development tools
development:
# Inherit all packages from desktop
packages:
# Include all desktop packages
- ${desktop.packages}
# Development tools
- build-essential
- gcc
- g++
- make
- cmake
- autoconf
- automake
- libtool
- pkg-config
- git
- subversion
- mercurial
- python3-dev
- python3-pip
- python3-venv
- nodejs
- npm
- yarn
- rustc
- cargo
- golang-go
- openjdk-17-jdk
- maven
- gradle
- docker.io
- docker-compose
- podman
- buildah
- skopeo
- vscode
- code
- atom
- sublime-text
- vim
- emacs
- nano
- gdb
- valgrind
- strace
- ltrace
- perf
- flamegraph
- wireshark
- tcpdump
- nmap
- netcat
- socat
- curl
- wget
- httpie
- jq
- yq
- sqlite3
- mysql-client
- postgresql-client
- redis-tools
- mongodb-clients
- awscli
- azure-cli
- gcloud
- kubectl
- helm
- terraform
- ansible
- vagrant
- virtualbox
- qemu-system
- libvirt-clients
- virt-manager
# Inherit stages from desktop and add development-specific stages
stages:
# Include all desktop stages
- ${desktop.stages}
# Additional development configuration
- name: org.osbuild.debian-development-config
options:
# Development environment setup
development_tools: true
# IDE configuration
ides:
- vscode
- atom
- sublime-text
# Container runtime setup
container_runtime: docker
# Development user setup
dev_user: debian
# Git configuration
git:
user_name: "Debian Developer"
user_email: "developer@debian.local"
# SSH key setup
ssh_keys: true
# Development directories
dev_directories:
- /home/debian/projects
- /home/debian/src
- /home/debian/bin
# Environment variables
env_vars:
- name: PATH
value: "/home/debian/bin:/usr/local/bin:$PATH"
- name: EDITOR
value: "vim"
- name: VISUAL
value: "code"

View file

@ -0,0 +1,112 @@
anaconda-iso:
packages:
- aajohan-comfortaa-fonts
- abattis-cantarell-fonts
- alsa-firmware
- alsa-tools-firmware
- anaconda
- anaconda-dracut
- anaconda-install-img-deps
- anaconda-widgets
- atheros-firmware
- audit
- bind-utils
- bitmap-fangsongti-fonts
- brcmfmac-firmware
- bzip2
- cryptsetup
- curl
- dbus-x11
- dejavu-sans-fonts
- dejavu-sans-mono-fonts
- device-mapper-persistent-data
- dmidecode
- dnf
- dracut-config-generic
- dracut-network
- efibootmgr
- ethtool
- fcoe-utils
- ftp
- gdb-gdbserver
- gdisk
- glibc-all-langpacks
- gnome-kiosk
- google-noto-sans-cjk-ttc-fonts
- grub2-tools
- grub2-tools-extra
- grub2-tools-minimal
- grubby
- gsettings-desktop-schemas
- hdparm
- hexedit
- hostname
- initscripts
- ipmitool
- iwlwifi-dvm-firmware
- iwlwifi-mvm-firmware
- jomolhari-fonts
- kbd
- kbd-misc
- kdump-anaconda-addon
- kernel
- khmeros-base-fonts
- less
- libblockdev-lvm-dbus
- libibverbs
- libreport-plugin-bugzilla
- libreport-plugin-reportuploader
- librsvg2
- linux-firmware
- lldpad
- lsof
- madan-fonts
- mt-st
- mtr
- net-tools
- nfs-utils
- nm-connection-editor
- nmap-ncat
- nss-tools
- openssh-clients
- openssh-server
- ostree
- pciutils
- perl-interpreter
- pigz
- plymouth
- prefixdevname
- python3-pyatspi
- rdma-core
- realtek-firmware
- rit-meera-new-fonts
- rng-tools
- rpcbind
- rpm-ostree
- rsync
- rsyslog
- selinux-policy-targeted
- sg3_utils
- sil-abyssinica-fonts
- sil-padauk-fonts
- smartmontools
- spice-vdagent
- strace
- systemd
- tar
- tigervnc-server-minimal
- tigervnc-server-module
- udisks2
- udisks2-iscsi
- usbutils
- vim-minimal
- volume_key
- wget
- xfsdump
- xfsprogs
- xorg-x11-drivers
- xorg-x11-fonts-misc
- xorg-x11-server-Xorg
- xorg-x11-xauth
- xrdb
- xz

View file

@ -0,0 +1 @@
fedora-40.yaml

View file

@ -0,0 +1 @@
centos-10.yaml

View file

@ -0,0 +1 @@
centos-9.yaml

1
bib/data/defs/rhel-10.yaml Symbolic link
View file

@ -0,0 +1 @@
centos-10.yaml

1
bib/data/defs/rhel-9.yaml Symbolic link
View file

@ -0,0 +1 @@
centos-9.yaml