diff --git a/.github/workflows/build-image-gts.yml b/.github/workflows/build-image-gts.yml deleted file mode 100644 index 0891abfca1c..00000000000 --- a/.github/workflows/build-image-gts.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: GTS Images -on: - pull_request: - branches: - - main - - testing - paths-ignore: - - "**.md" - - ".github/workflows/*validate*.yml" - - "system_files/shared/etc/bazaar/**" - schedule: - - cron: "0 1 * * TUE" # Every Tuesday at 1:00 AM UTC (same as bluefin-lts) - workflow_dispatch: - workflow_call: - -jobs: - build-image-gts: - name: Build GTS Images - uses: ./.github/workflows/reusable-build.yml - secrets: inherit - strategy: - fail-fast: false - matrix: - brand_name: [bluefin] - with: - # kernel_pin: 6.17.12-200.fc42.x86_64 ## Pin to 6.17 for ZFS compatibility - brand_name: ${{ matrix.brand_name }} - stream_name: gts - - generate_release: - name: Generate Release - needs: [build-image-gts] - secrets: inherit - uses: ./.github/workflows/generate-release.yml - with: - stream_name: '["gts"]' diff --git a/.github/workflows/build-images.yml b/.github/workflows/build-images.yml index 800ef1a5dac..2c0b7b50529 100644 --- a/.github/workflows/build-images.yml +++ b/.github/workflows/build-images.yml @@ -8,9 +8,6 @@ permissions: id-token: write jobs: - build-image-gts: - uses: ./.github/workflows/build-image-gts.yml - secrets: inherit build-image-stable: uses: ./.github/workflows/build-image-stable.yml secrets: inherit diff --git a/.github/workflows/generate-release.yml b/.github/workflows/generate-release.yml index 792786c6626..f6ab0807eb0 100644 --- a/.github/workflows/generate-release.yml +++ b/.github/workflows/generate-release.yml @@ -2,7 +2,7 @@ on: workflow_call: inputs: stream_name: - description: "Release Tag (e.g. gts, stable)" + description: "Release Tag (e.g. stable)" type: string required: true workflow_dispatch: @@ -10,12 +10,10 @@ on: handwritten: description: "Small Changelog about changes in this build" stream_name: - description: "Release Tag (e.g. gts, stable)" + description: "Release Tag (e.g. stable)" required: true type: choice options: - - '["gts", "stable"]' - - '["gts"]' - '["stable"]' permissions: @@ -55,7 +53,7 @@ jobs: - name: Create Release uses: softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b # v2 - if: contains(fromJson('["gts", "stable"]'), matrix.version) && (github.event.schedule == '0 1 * * TUE' || contains(fromJson('["workflow_dispatch", "workflow_call"]'), github.event_name)) + if: contains(fromJson('["stable"]'), matrix.version) && (github.event.schedule == '0 1 * * TUE' || contains(fromJson('["workflow_dispatch", "workflow_call"]'), github.event_name)) with: name: ${{ steps.generate-release-text.outputs.title }} tag_name: ${{ steps.generate-release-text.outputs.tag }} diff --git a/.github/workflows/reusable-build.yml b/.github/workflows/reusable-build.yml index 1ac4c173253..75a4ffd03b2 100644 --- a/.github/workflows/reusable-build.yml +++ b/.github/workflows/reusable-build.yml @@ -12,7 +12,7 @@ on: default: bluefin type: string stream_name: - description: "The Fedora Version: gts, stable, or latest" + description: "The Fedora Version: stable, latest, or beta" required: true type: string kernel_pin: diff --git a/AGENTS.md b/AGENTS.md index cb8dae75205..c4cc2f17054 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -36,7 +36,7 @@ This document provides essential information for coding agents working with the - **Two Build Targets**: `base` (regular users) and `dx` (developer experience) - **Image Flavors**: main, nvidia-open - **Fedora Versions**: 42, 43 supported -- **Stream Tags**: `latest` (F42/43), `beta` (F42/43), `stable` (F42), `gts` (F42 Grand Touring Support) +- **Stream Tags**: `latest` (F42/43), `beta` (F42/43), `stable` (F42) - **Build Process**: Sequential shell scripts in build_files/ directory - **Base Images**: Uses `ghcr.io/ublue-os/silverblue-main` as foundation from Universal Blue @@ -161,7 +161,6 @@ The repository uses mandatory pre-commit validation: ### GitHub Actions Workflows - `build-image-latest-main.yml` - Builds latest images on main branch changes - `build-image-stable.yml` - Builds stable release images -- `build-image-gts.yml` - Builds GTS (Grand Touring Support) images - `build-image-beta.yml` - Builds beta images for testing F42/F43 - `reusable-build.yml` - Core build logic for all image variants - `generate-release.yml` - Generates release artifacts and changelogs @@ -170,7 +169,8 @@ The repository uses mandatory pre-commit validation: - `moderator.yml` - Repository moderation tasks **Workflow Architecture:** -- Stream-specific workflows (gts, stable, latest, beta) call `reusable-build.yml` + +- Stream-specific workflows (stable, latest, beta) call `reusable-build.yml` - `reusable-build.yml` builds both base and dx variants for all flavors (main, nvidia-open) - Fedora version is dynamically detected based on stream tag - Images are signed with cosign and pushed to GHCR @@ -252,12 +252,12 @@ The `Justfile` is the central build orchestration tool with these key recipes: ```bash images: bluefin, bluefin-dx flavors: main, nvidia-open -tags: gts, stable, latest, beta +tags: stable, latest, beta ``` **Version Detection:** - `just fedora_version ` - Dynamically detects Fedora version from upstream base images -- For `gts` and `stable`: Checks `ghcr.io/ublue-os/base-main:` +- For `stable`: Checks `ghcr.io/ublue-os/base-main:` - For `latest`/`beta`: Checks corresponding upstream tags - Returns the Fedora major version (e.g., 42, 43) @@ -275,7 +275,7 @@ The `Containerfile` uses a multi-stage build process: - `FEDORA_MAJOR_VERSION` - Dynamically set by Just (42/43) - `IMAGE_NAME` - Target image name (bluefin/bluefin-dx) - `KERNEL` - Pinned kernel version (optional) -- `UBLUE_IMAGE_TAG` - Stream tag (gts/stable/latest/beta) +- `UBLUE_IMAGE_TAG` - Stream tag (stable/latest/beta) ### Build Script Execution Order Scripts in `build_files/base/` execute in numerical order: diff --git a/Justfile b/Justfile index bdce64409a6..08a14345e55 100644 --- a/Justfile +++ b/Justfile @@ -11,7 +11,6 @@ flavors := '( [nvidia-open]=nvidia-open )' tags := '( - [gts]=gts [stable]=stable [latest]=latest [beta]=beta @@ -116,7 +115,7 @@ build $image="bluefin" $tag="latest" $flavor="main" rechunk="0" ghcr="0" pipelin # AKMODS Flavor and Kernel Version if [[ "${flavor}" =~ hwe ]]; then akmods_flavor="bazzite" - elif [[ "${tag}" =~ gts|stable ]]; then + elif [[ "${tag}" =~ stable ]]; then akmods_flavor="coreos-stable" elif [[ "${tag}" =~ beta ]]; then akmods_flavor="main" @@ -627,11 +626,11 @@ generate-build-tags image="bluefin" tag="latest" flavor="main" kernel_pin="" ghc # Weekly Stable / Rebuild Stable on workflow_dispatch github_event="{{ github_event }}" if [[ "{{ tag }}" =~ "stable" && "${WEEKLY}" == "${TODAY}" && "${github_event}" =~ schedule ]]; then - BUILD_TAGS+=("stable" "stable-${version}" "stable-${version:3}") + BUILD_TAGS+=("stable" "stable-${version}" "stable-${version:3}" "gts" "gts-${version}" "gts-${version:3}") elif [[ "{{ tag }}" =~ "stable" && "${github_event}" =~ workflow_dispatch|workflow_call ]]; then - BUILD_TAGS+=("stable" "stable-${version}" "stable-${version:3}") + BUILD_TAGS+=("stable" "stable-${version}" "stable-${version:3}" "gts" "gts-${version}" "gts-${version:3}") elif [[ "{{ tag }}" =~ "stable" && "{{ ghcr }}" == "0" ]]; then - BUILD_TAGS+=("stable" "stable-${version}" "stable-${version:3}") + BUILD_TAGS+=("stable" "stable-${version}" "stable-${version:3}" "gts" "gts-${version}" "gts-${version:3}") elif [[ ! "{{ tag }}" =~ stable|beta ]]; then BUILD_TAGS+=("${FEDORA_VERSION}" "${FEDORA_VERSION}-${version}" "${FEDORA_VERSION}-${version:3}") fi @@ -685,7 +684,7 @@ tag-images image_name="" default_tag="" tags="": # > just retag-nvidia-on-ghcr latest latest-41.20250228.1 0 # # working_tag: The tag of the most recent known good image (e.g., stable-daily-41.20250126.3) -# stream: One of latest, stable-daily, stable or gts +# stream: One of latest, stable-daily, or stable # dry_run: Only print the skopeo commands instead of running them # # First generate a PAT with package write access (https://github.com/settings/tokens) diff --git a/build_files/base/03-install-kernel-akmods.sh b/build_files/base/03-install-kernel-akmods.sh index 655ba2376f0..c62cbb04cdb 100755 --- a/build_files/base/03-install-kernel-akmods.sh +++ b/build_files/base/03-install-kernel-akmods.sh @@ -88,7 +88,7 @@ kargs = ["rd.driver.blacklist=nouveau", "modprobe.blacklist=nouveau", "nvidia-dr EOF fi -# ZFS for gts/stable +# ZFS for stable if [[ ${AKMODS_FLAVOR} =~ coreos ]]; then # Fetch ZFS RPMs skopeo copy --retry-times 3 docker://ghcr.io/ublue-os/akmods-zfs:"${AKMODS_FLAVOR}"-"$(rpm -E %fedora)"-"${KERNEL}" dir:/tmp/akmods-zfs