From e5fd518f87499115439898dcaf7c52a620e611fa Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 27 May 2025 21:24:49 +0000 Subject: [PATCH 1/4] Initial plan for issue From 8cdce92732d83894e814b6a5570b451bea6d7450 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 27 May 2025 21:27:43 +0000 Subject: [PATCH 2/4] Add Prism tool references for image customization Co-authored-by: dmcilvaney <23200982+dmcilvaney@users.noreply.github.com> --- README.md | 12 +++++++----- docs/building/building.md | 2 ++ docs/packages/working_with_packages.md | 2 ++ 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index cd4cd53..b20c979 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,11 @@ -# Introduction - -The [CBL-Mariner](https://github.com/microsoft/CBL-Mariner) repository provides detailed instructions for building CBL-Mariner from end-to-end. While it is possible to clone CBL-Mariner and build packages or images from that environment, for most users, it is _not the recommended approach_. Usually it is best to work in a smaller, problem focused environment where you can quickly build just what you need, and rely on the fact that the curated CBL-Mariner packages are already available in the cloud. In this way, you can customize an image with your preferred disk layout or adding supplemental packages that CBL-Mariner may not provide. If you are building a product based on CBL-Mariner, you may want your own repository with just the minimal set of packages for your business needs. This repo, the CBL-MarinerTutorials repo, provides a basic template for getting started. From here you can create a CBL-Mariner based product (aka a Derivative Image) or you may generate quick experimental or debug builds to try out new ideas. - -When you build an ISO, VHD or VHDX image from this repository, the resulting image will contain additional content unavailable in the CBL-Mariner repo. The CBL-MarinerTutorials repository demonstrates how you can augment CBL-Mariner without forking the CBL-Mariner repository. This repository contains the SPEC file and source for building a simple "Hello World" application. This repository also includes a simple "os-subrelease" package that allows you to add identifying information about your derivative to an /etc/os-subrelease file. +# Introduction + +The [CBL-Mariner](https://github.com/microsoft/CBL-Mariner) repository provides detailed instructions for building CBL-Mariner from end-to-end. While it is possible to clone CBL-Mariner and build packages or images from that environment, for most users, it is _not the recommended approach_. Usually it is best to work in a smaller, problem focused environment where you can quickly build just what you need, and rely on the fact that the curated CBL-Mariner packages are already available in the cloud. In this way, you can customize an image with your preferred disk layout or adding supplemental packages that CBL-Mariner may not provide. If you are building a product based on CBL-Mariner, you may want your own repository with just the minimal set of packages for your business needs. This repo, the CBL-MarinerTutorials repo, provides a basic template for getting started. From here you can create a CBL-Mariner based product (aka a Derivative Image) or you may generate quick experimental or debug builds to try out new ideas. + +> **Note:** For customizing Azure Linux images, we recommend using the [Prism tool](https://github.com/microsoft/azure-linux-image-tools), which is the preferred method for building custom images. Please refer to the [Prism Image Customizer documentation](https://microsoft.github.io/azure-linux-image-tools/imagecustomizer/README.html) for details. + +When you build an ISO, VHD or VHDX image from this repository, the resulting image will contain additional content unavailable in the CBL-Mariner repo. The CBL-MarinerTutorials repository demonstrates how you can augment CBL-Mariner without forking the CBL-Mariner repository. This repository contains the SPEC file and source for building a simple "Hello World" application. This repository also includes a simple "os-subrelease" package that allows you to add identifying information about your derivative to an /etc/os-subrelease file. Follow this decision tree to ensure you are using the correct repository for your use case: diff --git a/docs/building/building.md b/docs/building/building.md index a3f0eae..561d0f2 100644 --- a/docs/building/building.md +++ b/docs/building/building.md @@ -1,5 +1,7 @@ # Building +> **Note:** For customizing Azure Linux images, we recommend using the [Prism tool](https://github.com/microsoft/azure-linux-image-tools), which is the preferred method for building custom images. Please refer to the [Prism Image Customizer documentation](https://microsoft.github.io/azure-linux-image-tools/imagecustomizer/README.html) for details. The instructions below are still valid but represent the legacy approach for building custom images. + - [Tutorial: Build a Demo VHD or VHDX](#tutorial-build-a-demo-vhd-or-vhdx) - [Build Derivate VHD or VHDX](#build-derivate-vhd-or-vhdx) - [Use Hyper-V to Boot Your Demo Image](#use-hyper-v-to-boot-your-demo-image) diff --git a/docs/packages/working_with_packages.md b/docs/packages/working_with_packages.md index f8e9f88..e132942 100644 --- a/docs/packages/working_with_packages.md +++ b/docs/packages/working_with_packages.md @@ -1,5 +1,7 @@ # Working with Packages +> **Note:** For customizing Azure Linux images, we recommend using the [Prism tool](https://github.com/microsoft/azure-linux-image-tools), which is the preferred method for building custom images. Please refer to the [Prism Image Customizer documentation](https://microsoft.github.io/azure-linux-image-tools/imagecustomizer/README.html) for details. The instructions below are still valid but represent the legacy approach for customizing images with packages. + - [Image Config File](#image-config-file) - [File Paths](#file-paths) - [Package Lists](#package-lists) From 96921e0a091cd6aa5c2b398f1a9f71b877fc4c2a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 28 May 2025 17:49:43 +0000 Subject: [PATCH 3/4] Add Prism tool reference to default_images.md Co-authored-by: dmcilvaney <23200982+dmcilvaney@users.noreply.github.com> --- docs/getting_started/default_images.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/getting_started/default_images.md b/docs/getting_started/default_images.md index 3211c89..60c1cf0 100644 --- a/docs/getting_started/default_images.md +++ b/docs/getting_started/default_images.md @@ -1,5 +1,7 @@ # Building +> **Note:** For customizing Azure Linux images, we recommend using the [Prism tool](https://github.com/microsoft/azure-linux-image-tools), which is the preferred method for building custom images. Please refer to the [Prism Image Customizer documentation](https://microsoft.github.io/azure-linux-image-tools/imagecustomizer/README.html) for details. The instructions below are still valid but represent the legacy approach for building custom images. + - [Tutorial: Build the default ISO](#tutorial-build-the-default-iso) - [Build ISO](#build-iso) - [Use Hyper-V to Boot Your ISO Installer](#use-hyper-v-to-boot-your-iso-installer) From 6c3c2d3c77c8bf1b84615289028a21af5463d30b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 28 May 2025 18:19:38 +0000 Subject: [PATCH 4/4] Add reference to custom spec files section in working_with_packages.md Co-authored-by: dmcilvaney <23200982+dmcilvaney@users.noreply.github.com> --- docs/packages/working_with_packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/packages/working_with_packages.md b/docs/packages/working_with_packages.md index e132942..d8dcb33 100644 --- a/docs/packages/working_with_packages.md +++ b/docs/packages/working_with_packages.md @@ -1,6 +1,6 @@ # Working with Packages -> **Note:** For customizing Azure Linux images, we recommend using the [Prism tool](https://github.com/microsoft/azure-linux-image-tools), which is the preferred method for building custom images. Please refer to the [Prism Image Customizer documentation](https://microsoft.github.io/azure-linux-image-tools/imagecustomizer/README.html) for details. The instructions below are still valid but represent the legacy approach for customizing images with packages. +> **Note:** For customizing Azure Linux images, we recommend using the [Prism tool](https://github.com/microsoft/azure-linux-image-tools), which is the preferred method for building custom images. Please refer to the [Prism Image Customizer documentation](https://microsoft.github.io/azure-linux-image-tools/imagecustomizer/README.html) for details. The instructions below are still valid but represent the legacy approach for customizing images with packages. If you're creating custom spec files, please see the [Tutorial: Customize your Image with Unsupported Packages](#tutorial-customize-your-image-with-unsupported-packages) section. - [Image Config File](#image-config-file) - [File Paths](#file-paths)