Quick Start Guide
Quick Start Guide: Build your first AutoSD image¶
Goal: Build and run your first AutoSD image in 15 minutes.
This guide gets you from zero to a running AutoSD virtual machine with a simple, proven path. After you have succeeded in building an image, you can explore the more advanced features and customization options.
What you'll build¶
By the end of this guide, you will have the following:
- A working AutoSD development environment
- Your first custom AutoSD image built and running
- An understanding of the basic development workflow
- A foundation for more advanced customization
Prerequisites¶
=== "Linux" ```bash # Fedora/RHEL/CentOS Stream $ sudo dnf install -y git podman
# Ubuntu/Debian
$ sudo apt update && sudo apt install -y git podman
```
=== "macOS" ```bash # Install Homebrew if not already installed $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install dependencies
$ brew install git podman
$ podman machine init
$ podman machine start
```
Step 1: Install Automotive Image Builder (2 minutes)¶
The fastest way to get started is using the containerized version.
-
Create a working directory:
bash $ mkdir -p ~/autosd-quickstart $ cd ~/autosd-quickstart
-
Get the sample manifests:
console $ git clone https://gitlab.com/CentOS/automotive/sample-images.git
-
Download the containerized
automotive-image-builder
:console $ curl -o auto-image-builder.sh \ "https://gitlab.com/CentOS/automotive/src/automotive-image-builder/-/raw/main/auto-image-builder.sh"
-
Make the
auto-image-builder.sh
script executable:console $ chmod +x auto-image-builder.sh
Alternative Installation Methods
For production use or if you prefer native installation, see Installing Automotive Image Builder.
Step 2: Build your first image (10 minutes)¶
Build a simple developer image that includes common tools:
$ sudo ./auto-image-builder.sh build \
--target qemu \
--export qcow2 \
sample-images/images/simple-developer.aib.yml \
my-first-autosd.qcow2
What's happening in the manifest
--target qemu
: Build for QEMU virtual machine--export qcow2
: Export as QCOW2 format for virtualizationsimple-developer.aib.yml
: Use the pre-configured developer manifestmy-first-autosd.qcow2
: Specify the output filename
Build Process
The build downloads packages, creates filesystem layouts, and generates your bootable image. First builds take longer due to downloads and caching.
Step 3: Run your image (1 minute)¶
-
Download
automotive-image-runner
, a tool that you can use to quickly boot AutoSD images with QEMU:console $ curl -o automotive-image-runner \ "https://gitlab.com/CentOS/automotive/src/automotive-image-builder/-/raw/main/automotive-image-runner"
-
Make the
automotive-image-runner
tool executable:console $ chmod +x automotive-image-runner
-
Launch your new AutoSD image:
console $ sudo ./automotive-image-runner my-first-autosd.qcow2
Login credentials:
- Username:
root
- Password:
password
- Username:
Step 4: Explore your AutoSD system (2 minutes)¶
After logging in, try these commands to understand what you've built:
# Check the OS version
cat /etc/os-release
# See all installed packages
rpm -qa
# See installed packages specific to automotive
rpm -qa | grep -E "automotive|rt|kernel" | head -10
# List all container images available locally
podman images
# Check running containers (should be none initially)
podman ps -a
# Check system kernel information
uname -a
# Display build-specific metadata
cat /etc/build-info
# View system partitions
lsblk
# Check systemd services
systemctl
Congratulations! You've successfully built and deployed your first AutoSD image.
What you've accomplished¶
You now have created the following:
- A Working build environment: Automotive Image Builder installed and configured
- A Custom AutoSD image: Built from a manifest with automotive-specific optimizations
- A Runtime environment: A bootable VM running your custom OS
- A Foundation for growth: Ready to explore advanced features
Next steps - choose your journey¶
Now that you have a working foundation, pick your path:
Customize your image¶
Learn to modify manifests and add your own applications:
Deploy to hardware¶
Move from virtual machines to real automotive hardware:
Implement safety features¶
Understand mixed criticality:
Get ready for production¶
Prepare for deployment and maintenance:
Understanding your build¶
The simple-developer.aib.yml
manifest you used includes:
- Base OS: CentOS Stream 9 with automotive kernel
- Development tools: git, vim, development libraries
- Container runtime: Podman for application deployment
- Network tools: Standard networking and debugging utilities
- Safety foundation: Basic mixed-criticality partition setup
Get help¶
- Documentation: Browse the full documentation
- Community: Join the Automotive SIG
- Issues: Report problems on GitLab
- Troubleshooting: See common solutions
This quick start guide is designed to get you productive quickly. For comprehensive understanding, explore the detailed documentation sections.