### Install Justfiles for User Commands Source: https://context7.com/blue-build/base-images/llms.txt Integrates Just command recipes into the system to provide convenient CLI utilities for end-users. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/module-list-v1.json modules: - type: justfiles validate: true install: true include: - 30-secureboot.just ``` -------------------------------- ### Configure NVIDIA Drivers and Kernel Arguments Source: https://context7.com/blue-build/base-images/llms.txt Automates NVIDIA driver installation, secure boot signing, and kernel parameter configuration for hardware compatibility. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/module-list-v1.json modules: - type: script env: PUBLIC_KEY_DER_PATH: /etc/pki/akmods/certs/akmods-blue-build.der secrets: - type: file source: ./MOK.priv mount: type: file destination: /tmp/certs/private_key.priv scripts: - installnvidia.sh - type: files files: - source: nvidia destination: / - type: kargs kargs: - rd.driver.blacklist=nouveau - modprobe.blacklist=nouveau - nvidia-drm.modeset=1 - nvidia-drm.fbdev=1 ``` -------------------------------- ### Rebase atomic Fedora system to BlueBuild image Source: https://github.com/blue-build/base-images/blob/main/README.md Commands to switch an existing atomic Fedora installation to a BlueBuild image. This process involves an initial switch to install keys, followed by a secure switch enforcing container signature policies. ```bash bootc switch ghcr.io/blue-build/base-images/fedora-kinoite:latest systemctl reboot bootc switch --enforce-container-sigpolicy ghcr.io/blue-build/base-images/fedora-kinoite:latest systemctl reboot ``` -------------------------------- ### Install/Switch BlueBuild Images with 'bootc' Source: https://context7.com/blue-build/base-images/llms.txt Installs or switches to a BlueBuild base image on an existing Fedora atomic system using the 'bootc' command. It involves rebasing to an unsigned image first, rebooting, then switching to a signed image with signature verification, followed by another reboot. ```bash # Rebase to unsigned image first (to get signing keys and policies) bootc switch ghcr.io/blue-build/base-images/fedora-silverblue:latest # Reboot to complete initial rebase systemctl reboot # Then switch to signed image with signature verification bootc switch --enforce-container-sigpolicy ghcr.io/blue-build/base-images/fedora-silverblue:latest # Reboot again to complete installation systemctl reboot ``` -------------------------------- ### Manage Packages with DNF Module Source: https://context7.com/blue-build/base-images/llms.txt Configures repository sources, package installations, removals, and replacements to customize the base image software stack. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/module-list-v1.json modules: - type: dnf repos: cleanup: true nonfree: negativo17 copr: - ublue-os/packages - ublue-os/staging install: skip-unavailable: true packages: - bootc - distrobox - htop - just - tmux - vim - wireguard-tools exclude: - google-noto-sans-cjk-vf-fonts remove: auto-remove: false packages: - fedora-flathub-remote - fedora-third-party replace: - from-repo: fedora-multimedia packages: - old: ffmpeg-free new: ffmpeg - old: libavcodec-free new: libavcodec ``` -------------------------------- ### Enroll Secure Boot Key with 'just' Source: https://context7.com/blue-build/base-images/llms.txt Enrolls the BlueBuild secure boot signing key using the 'just' command. This is necessary for NVIDIA driver support on systems with secure boot enabled. The process involves running the command and then following UEFI prompts with a specific password. ```bash # Enroll the BlueBuild secure boot key (password: "bluebuild") just enroll-secure-boot-key # Output: # At next reboot, the mokutil UEFI menu UI will be displayed (*QWERTY* keyboard input). # Select "Enroll MOK", and input "bluebuild" as the password ``` -------------------------------- ### Build BlueBuild Images Locally with 'just' Source: https://context7.com/blue-build/base-images/llms.txt Builds images locally using the 'justfile' and the BlueBuild CLI. Supports building individual recipes or all recipes simultaneously. Additionally, it can generate an ISO from a built image or create a new secure boot signing key for custom images. ```bash # Build a single recipe just build recipes/fedora-silverblue-latest.yml # Build all recipes just build-all # Generate an ISO from a built image just generate-iso recipes/fedora-kinoite-latest.yml # Generate a new secure boot signing key (for custom images) just generate-secureboot-key ``` -------------------------------- ### BlueBuild Image Variants Overview Source: https://context7.com/blue-build/base-images/llms.txt Lists the available BlueBuild image variants, categorized by desktop environment, NVIDIA driver support, and Fedora version. This helps users select the appropriate base image for their needs. ```bash # Base images (minimal, no desktop) ghcr.io/blue-build/base-images/fedora-base:latest # Fedora 43 ghcr.io/blue-build/base-images/fedora-base:gts # Fedora 42 # Silverblue images (GNOME desktop) ghcr.io/blue-build/base-images/fedora-silverblue:latest ghcr.io/blue-build/base-images/fedora-silverblue-nvidia:latest # Proprietary NVIDIA ghcr.io/blue-build/base-images/fedora-silverblue-nvidia-open:latest # Open NVIDIA # Kinoite images (KDE Plasma desktop) ghcr.io/blue-build/base-images/fedora-kinoite:latest ghcr.io/blue-build/base-images/fedora-kinoite-nvidia:latest ghcr.io/blue-build/base-images/fedora-kinoite-nvidia-open:latest # COSMIC desktop images ghcr.io/blue-build/base-images/fedora-cosmic:latest ghcr.io/blue-build/base-images/fedora-cosmic-nvidia:latest ghcr.io/blue-build/base-images/fedora-cosmic-nvidia-open:latest ``` -------------------------------- ### Configure LUKS TPM Auto-Unlock with 'just' Source: https://context7.com/blue-build/base-images/llms.txt Configures automatic LUKS disk encryption unlock using TPM on supported hardware via the 'just' command. Provides commands to both enable and disable this feature. ```bash # Enable TPM-based LUKS auto-unlock just setup-luks-tpm-unlock # Disable TPM-based LUKS auto-unlock just remove-luks-tpm-unlock ``` -------------------------------- ### Configure BlueBuild Image Recipe Source: https://context7.com/blue-build/base-images/llms.txt Defines the core structure of a BlueBuild image recipe, including base image selection, target version, and modular build steps. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/recipe-v1.json name: base-images/fedora-silverblue description: Reference implementation and base images for BlueBuild. base-image: quay.io/fedora-ostree-desktops/silverblue image-version: 43 platforms: - linux/amd64 - linux/arm64 modules: - from-file: base/common.yml - from-file: base/silverblue.yml - type: os-release properties: PRETTY_NAME: BlueBuild OS - Silverblue (FROM Fedora Silverblue) - from-file: base/post-build.yml ``` -------------------------------- ### Copy Files into Container Image Source: https://context7.com/blue-build/base-images/llms.txt Copies local configuration files, scripts, or certificates into the container filesystem during the build process. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/module-list-v1.json modules: - type: files files: - source: base destination: / - source: nvidia destination: / ``` -------------------------------- ### Verify BlueBuild Image Signatures with 'cosign' Source: https://context7.com/blue-build/base-images/llms.txt Verifies the authenticity of BlueBuild images using 'cosign' with the project's public key. This involves downloading the public key and then running the 'cosign verify' command against a specified image. The expected output confirms verified signatures. ```bash # Download the cosign public key curl -fsSLO https://github.com/blue-build/base-images/raw/main/cosign.pub # Verify image signature cosign verify --key cosign.pub ghcr.io/blue-build/base-images/fedora-base:latest # Expected output shows verified signatures with certificate information ``` -------------------------------- ### Manage Systemd Services Source: https://context7.com/blue-build/base-images/llms.txt Enables or masks specific systemd services to control background processes and system behavior. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/module-list-v1.json modules: - type: systemd system: masked: - rpm-ostreed-automatic.timer enabled: - bootc-fetch-apply-updates.timer ``` -------------------------------- ### Customize OS Release Identification with YAML Module Source: https://context7.com/blue-build/base-images/llms.txt Customizes the operating system identification displayed in system tools using the 'os-release' module within a BlueBuild configuration. This allows for setting custom names like 'BlueBuild OS'. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/module-list-v1.json modules: - type: os-release properties: PRETTY_NAME: BlueBuild OS - Kinoite (FROM Fedora Kinoite) ``` -------------------------------- ### Verify image signature with Cosign Source: https://github.com/blue-build/base-images/blob/main/README.md Command to verify the authenticity of a container image using a public key. This ensures the image was signed by the expected authority using Sigstore. ```bash cosign verify --key cosign.pub ghcr.io/blue-build/base-images/fedora-base:latest ``` -------------------------------- ### Regenerate Initramfs with Custom Dracut Config via YAML Source: https://context7.com/blue-build/base-images/llms.txt Triggers the regeneration of the initial RAM filesystem with custom dracut configuration using the 'initramfs' module in BlueBuild. It allows setting environment variables like 'DRACUT_NO_XATTR' during the process. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/module-list-v1.json modules: - type: initramfs env: DRACUT_NO_XATTR: '1' ``` -------------------------------- ### Execute Custom Scripts During Build with YAML 'script' Module Source: https://context7.com/blue-build/base-images/llms.txt Executes custom shell scripts or inline snippets during the build process using the 'script' module in BlueBuild. This module supports setting environment variables and defining custom scripts or snippets for tasks like downloading files or cleanup. ```yaml # yaml-language-server: $schema=https://schema.blue-build.org/module-list-v1.json modules: - type: script env: CSFG: /usr/lib/systemd/system-generators/coreos-sulogin-force-generator snippets: # Download CoreOS emergency boot generator - curl -sSLo ${CSFG} https://raw.githubusercontent.com/coreos/fedora-coreos-config/refs/heads/stable/overlay.d/05core/usr/lib/systemd/system-generators/coreos-sulogin-force-generator - chmod +x ${CSFG} # Cleanup repository files - rm -f /etc/yum.repos.d/fedora-negativo17.repo scripts: - install-appimage-thumbnailer.sh ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.