From 5a83348c32f1a54ba78641bc1068df491ccd8f8f Mon Sep 17 00:00:00 2001 From: Dave Jansen Date: Tue, 2 Dec 2025 18:07:58 +0900 Subject: [PATCH] Initial commit with toolbox-specific changes --- .gitea/workflows/build-disk.yml | 115 ------------------------- .gitea/workflows/build.yml | 7 +- Containerfile | 19 ++--- build_files/build.sh | 132 ++++++----------------------- build_files/cleanup.sh | 73 ---------------- build_files/rpm-keys/1password.asc | 50 ----------- build_files/rpm-keys/tailscale.gpg | 52 ------------ disk_config/disk.toml | 3 - disk_config/iso-gnome.toml | 20 ----- disk_config/iso-kde.toml | 21 ----- 10 files changed, 38 insertions(+), 454 deletions(-) delete mode 100644 .gitea/workflows/build-disk.yml delete mode 100755 build_files/cleanup.sh delete mode 100644 build_files/rpm-keys/1password.asc delete mode 100644 build_files/rpm-keys/tailscale.gpg delete mode 100644 disk_config/disk.toml delete mode 100644 disk_config/iso-gnome.toml delete mode 100644 disk_config/iso-kde.toml diff --git a/.gitea/workflows/build-disk.yml b/.gitea/workflows/build-disk.yml deleted file mode 100644 index 88756c0..0000000 --- a/.gitea/workflows/build-disk.yml +++ /dev/null @@ -1,115 +0,0 @@ ---- -name: Build disk images - -on: - workflow_dispatch: - inputs: - upload-to-s3: - description: "Upload to S3" - required: false - default: false - type: boolean - platform: - required: true - type: choice - options: - - amd64 - - arm64 - pull_request: - branches: - - main - paths: - - './disk_config/disk.toml' - - './disk_config/iso.toml' - - './.github/workflows/build-disk.yml' - -env: - IMAGE_NAME: ${{ github.event.repository.name }} # output of build.yml, keep in sync - IMAGE_REGISTRY: "ghcr.io/${{ github.repository_owner }}" # do not edit - DEFAULT_TAG: "latest" - BIB_IMAGE: "ghcr.io/lorbuschris/bootc-image-builder:20250608" # "quay.io/centos-bootc/bootc-image-builder:latest" - see https://github.com/osbuild/bootc-image-builder/pull/954 - -concurrency: - group: ${{ github.workflow }}-${{ github.ref || github.run_id }} - cancel-in-progress: true - -jobs: - build: - name: Build disk images - runs-on: ${{ inputs.platform == 'amd64' && 'ubuntu-24.04' || 'ubuntu-24.04-arm' }} - strategy: - fail-fast: false - matrix: - disk-type: ["qcow2", "anaconda-iso"] - permissions: - contents: read - packages: read - id-token: write - - steps: - - name: Prepare environment - run: | - USER_UID=$(id -u) - USER_GID=$(id -g) - # Concatenate the types with a hyphen - DISK_TYPE=$(echo "${{ matrix.disk-type }}" | tr ' ' '-') - # Lowercase the image uri - echo "IMAGE_REGISTRY=${IMAGE_REGISTRY,,}" >> ${GITHUB_ENV} - echo "IMAGE_NAME=${IMAGE_NAME,,}" >> ${GITHUB_ENV} - echo "DISK_TYPE=${DISK_TYPE}" >> ${GITHUB_ENV} - echo "USER_UID=${USER_UID}" >> ${GITHUB_ENV} - echo "USER_GID=${USER_GID}" >> ${GITHUB_ENV} - - - name: Install dependencies - if: inputs.platform == 'arm64' - run: | - set -x - sudo apt update -y - sudo apt install -y \ - podman - - - name: Maximize build space - if: inputs.platform != 'arm64' - uses: ublue-os/remove-unwanted-software@cc0becac701cf642c8f0a6613bbdaf5dc36b259e # v9 - with: - remove-codeql: true - - - name: Checkout - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - - - name: Build disk images - id: build - uses: osbuild/bootc-image-builder-action@main - with: - builder-image: ${{ env.BIB_IMAGE }} - config-file: ${{ matrix.disk-type == 'anaconda-iso' && './disk_config/iso.toml' || './disk_config/disk.toml' }} - image: ${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }}:${{ env.DEFAULT_TAG }} - chown: ${{ env.USER_UID }}:${{ env.USER_GID }} - types: ${{ matrix.disk-type }} - additional-args: --use-librepo=True - - - name: Upload disk images and Checksum to Job Artifacts - if: inputs.upload-to-s3 != true && github.event_name != 'pull_request' - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 - with: - path: ${{ steps.build.outputs.output-directory }} - if-no-files-found: error - retention-days: 0 - compression-level: 0 - overwrite: true - - - name: Upload to S3 - if: inputs.upload-to-s3 == true && github.event_name != 'pull_request' - shell: bash - env: - RCLONE_CONFIG_S3_TYPE: s3 - RCLONE_CONFIG_S3_PROVIDER: ${{ secrets.S3_PROVIDER }} - RCLONE_CONFIG_S3_ACCESS_KEY_ID: ${{ secrets.S3_ACCESS_KEY_ID }} - RCLONE_CONFIG_S3_SECRET_ACCESS_KEY: ${{ secrets.S3_SECRET_ACCESS_KEY }} - RCLONE_CONFIG_S3_REGION: ${{ secrets.S3_REGION }} - RCLONE_CONFIG_S3_ENDPOINT: ${{ secrets.S3_ENDPOINT }} - SOURCE_DIR: ${{ steps.build.outputs.output-directory }} - run: | - sudo apt-get update - sudo apt-get install -y rclone - rclone copy $SOURCE_DIR S3:${{ secrets.S3_BUCKET_NAME }} \ No newline at end of file diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 6a26172..a6769ad 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -4,8 +4,8 @@ on: pull_request: branches: - main - schedule: - - cron: "05 4 */3 * *" # 4:05am every three days. + #schedule: + # - cron: "05 4 */7 * *" # 4:05am every three days. push: branches: - main @@ -16,7 +16,8 @@ on: env: REGISTRY_USER: ${{ github.actor }} REGISTRY_AUTH_FILE: /root/.podman/auth.json - IMAGE_DESC: "My customized Fedora bootc image, based on Universal Blue" + IMAGE_DESC: + "My customized Fedora toolbox image, based on Universal Blue's work." IMAGE_KEYWORDS: "bootc,fedora,silverblue,ublue,universal-blue" IMAGE_LOGO_URL: "https://davejansen.dev/avatars/940c9cc684fa03784359f97d591a389ecd90cd912acf2335a60acd616922000a?size=48" IMAGE_NAME: "${{ github.event.repository.name }}" # output image name, usually same as repo name diff --git a/Containerfile b/Containerfile index 588b154..69048da 100644 --- a/Containerfile +++ b/Containerfile @@ -1,24 +1,17 @@ -ARG FEDORA_BASE=42 +ARG FEDORA_BASE=43 +ARG HOST_SPAWN=v1.6.2 # Allow build scripts to be referenced without being copied into the final image FROM scratch AS ctx + COPY build_files / COPY /sys_files /sys_files COPY cosign.pub /cosign.pub # Base Image -FROM quay.io/fedora-ostree-desktops/silverblue:$FEDORA_BASE +FROM registry.fedoraproject.org/fedora-toolbox:$FEDORA_BASE -### [IM]MUTABLE /opt -## Some bootable images, like Fedora, have /opt symlinked to /var/opt, in order to -## make it mutable/writable for users. However, some packages write files to this directory, -## thus its contents might be wiped out when bootc deploys an image, making it troublesome for -## some packages. Eg, google-chrome, docker-desktop. -## -## Uncomment the following line if one desires to make /opt immutable and be able to be used -## by the package manager. - -RUN rm /opt && mkdir /opt +ENV HOST_SPAWN=$HOST_SPAWN ### MODIFICATIONS ## make modifications desired in your image and install packages by modifying the build.sh script @@ -28,7 +21,7 @@ RUN --mount=type=bind,from=ctx,source=/,target=/ctx \ --mount=type=cache,dst=/var/cache \ --mount=type=cache,dst=/var/log \ --mount=type=tmpfs,dst=/tmp \ - /ctx/build.sh && /ctx/cleanup.sh + /ctx/build.sh ### LINTING ## Verify final image and contents are correct. diff --git a/build_files/build.sh b/build_files/build.sh index 6ed6eee..6cdc453 100755 --- a/build_files/build.sh +++ b/build_files/build.sh @@ -11,127 +11,51 @@ cp /ctx/cosign.pub /etc/pki/containers/davejansen.pub ### Install packages -# Packages can be installed from any enabled yum repo on the image. -# RPMfusion repos are available by default in ublue main images -# List of rpmfusion packages can be found here: -# https://mirrors.rpmfusion.org/mirrorlist?path=free/fedora/updates/39/x86_64/repoview/index.html&protocol=https&redirect=1 - -# Install RPMFusion and enable fedora-multimedia with a higher priority than default -if ! grep -q fedora-multimedia <(dnf5 repolist); then - # Enable or Install Repofile - #dnf5 install \ - # https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \ - # https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm - - # Enable fedora-multimedia - dnf5 config-manager setopt fedora-multimedia.enabled=1 || - dnf5 config-manager addrepo --from-repofile="https://negativo17.org/repos/fedora-multimedia.repo" -fi - -# Set higher priority -dnf5 config-manager setopt fedora-multimedia.priority=90 - -# Remove Fedora's package that enforces their own (filtered) version of the -# flathub repo is present, as-well as the system-installed Firefox as I prefer to use the Flatpak version -dnf5 remove -y fedora-flathub-remote firefox firefox-langpacks - -# Add Flathub to the image for eventual application -mkdir -p /etc/flatpak/remotes.d/ -curl --retry 3 -Lo /etc/flatpak/remotes.d/flathub.flatpakrepo https://dl.flathub.org/repo/flathub.flatpakrepo - -# use override to replace mesa and others with less crippled versions -OVERRIDES=( - "intel-gmmlib" - "intel-mediasdk" - "intel-vpl-gpu-rt" - "libheif" - "libva" - "libva-intel-media-driver" - "mesa-dri-drivers" - "mesa-filesystem" - "mesa-libEGL" - "mesa-libGL" - "mesa-libgbm" - "mesa-va-drivers" - "mesa-vulkan-drivers" -) - -dnf5 distro-sync --skip-unavailable -y --repo='fedora-multimedia' "${OVERRIDES[@]}" -dnf5 versionlock add "${OVERRIDES[@]}" - -# Remove additional repositories Fedora comes with out of the box -rm \ - /etc/yum.repos.d/fedora-cisco-openh264.repo \ - /etc/yum.repos.d/google-chrome.repo \ - /etc/yum.repos.d/rpmfusion-nonfree-nvidia-driver.repo \ - /etc/yum.repos.d/rpmfusion-nonfree-steam.repo \ - /etc/yum.repos.d/_copr:copr.fedorainfracloud.org:phracek:PyCharm.repo - # Add country query to all repo metalinks # shellcheck disable=SC2016 sed -i -e '/^metalink\=/s/\$releasever\&arch\=\$basearch$/\$releasever\&arch\=\$basearch\&country\=KR,JP,TW/g' /etc/yum.repos.d/*.repo -# Add 1Password repo -#rpmkeys --import https://downloads.1password.com/linux/keys/1password.asc -cp /ctx/rpm-keys/1password.asc /etc/pki/rpm-gpg/1password.asc -sh -c 'echo -e "[1password]\nname=1Password Stable Channel\nbaseurl=https://downloads.1password.com/linux/rpm/stable/\$basearch\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=\"file:///etc/pki/rpm-gpg/1password.asc\"" > /etc/yum.repos.d/1password.repo' - -# Add Tailscale repo -#rpmkeys --import https://pkgs.tailscale.com/stable/fedora/repo.gpg -#dnf5 config-manager addrepo --from-repofile=https://pkgs.tailscale.com/stable/fedora/tailscale.repo -cp /ctx/rpm-keys/tailscale.gpg /etc/pki/rpm-gpg/tailscale.gpg -sh -c 'echo -e "[tailscale-stable]\nname=Tailscale stable\nbaseurl=https://pkgs.tailscale.com/stable/fedora/\$basearch\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=\"file:///etc/pki/rpm-gpg/tailscale.gpg\"" > /etc/yum.repos.d/tailscale.repo' - # Update all existing packages -# dnf5 update -y +dnf5 update -y # Install my own layered packages dnf5 install -y \ - gvfs-nfs \ - openssl \ + fish \ + neovim \ + ripgrep \ + curl \ + stow \ wl-clipboard \ - ffmpeg ffmpeg-libs ffmpegthumbnailer \ - heif-pixbuf-loader intel-vaapi-driver libavcodec libheif \ - libcamera libcamera-gstreamer libcamera-ipa libcamera-tools pipewire-plugin-libcamera \ - gnome-shell-extension-appindicator \ - 1password 1password-cli \ - tailscale + htop \ + gnupg2-scdaemon \ + pinentry pinentry-tty pinentry-gnome3 \ + patch gcc gcc-c++ \ + python3 python3-pip \ + nodejs \ + dotnet-sdk-8.0 \ + php composer -# Delete 1Password and Tailscale repos once packages are installed -# so they don't end up in the final image. -rm \ - /etc/yum.repos.d/1password.repo \ - /etc/yum.repos.d/tailscale.repo \ - /etc/pki/rpm-gpg/1password.asc \ - /etc/pki/rpm-gpg/tailscale.gpg +# Install uv +curl -LsSf https://astral.sh/uv/install.sh | sh -# Or just disable: -# dnf5 config-manager setopt 1password.enabled=0 tailscale-stable.enabled=0 -# sed -i 's/enabled=1/enabled=0/' \ -# /etc/yum.repos.d/1password.repo \ -# /etc/yum.repos.d/tailscale.repo \ +# Install LazyGit +dnf5 copr enable dejan/lazygit +dnf5 install -y lazygit -# Fedora Flatpak service is a part of the flatpak package, ensure it's overridden by moving to replace it at the end of the build. -mv -f /usr/lib/systemd/system/flatpak-add-flathub-repos.service /usr/lib/systemd/system/flatpak-add-fedora-repos.service - -# Enable Tailscale -systemctl enable tailscaled +# Install `host-spawn` +curl "https://github.com/1player/host-spawn/releases/download/$HOST_SPAWN/host-spawn-x86_64" +chmod +x host-spawn-x86_64 +mv host-spawn-x86_64 /usr/local/bin/host-spawn # Cleanup -# Remove dnf5 versionlocks -dnf5 versionlock clear +dnf5 clean -# Remove tmp files and everything in dirs that make bootc unhappy +# Remove tmp files rm -rf /tmp/* || true -rm -rf /usr/etc -rm -rf /boot && mkdir /boot -# Preserve cache mounts -find /var/* -maxdepth 0 -type d \! -name cache \! -name log -exec rm -rf {} \; -find /var/cache/* -maxdepth 0 -type d \! -name libdnf5 -exec rm -rf {} \; -# Make sure /var/tmp is properly created -mkdir -p /var/tmp -chmod -R 1777 /var/tmp +# # Make sure /var/tmp is properly created +# mkdir -p /var/tmp +# chmod -R 1777 /var/tmp echo "Done." diff --git a/build_files/cleanup.sh b/build_files/cleanup.sh deleted file mode 100755 index 5828eec..0000000 --- a/build_files/cleanup.sh +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/bash - -set -ouex pipefail - -## Handle files that rpm-ostree would normally remove -## Adapted from: https://github.com/hhd-dev/rechunk/blob/master/1_prune.sh#L33 - -# if [ -f /etc/passwd ]; then -# out="$(grep -v 'root' /etc/passwd)" -# -# if [[ ! -z "$out" ]]; then -# echo -# echo Appending the following passwd users to /usr/lib/passwd -# echo "${out}" -# echo "$out" >>/usr/lib/passwd -# fi -# fi - -if [ -f /etc/group ]; then - out="$(grep -v 'root\|wheel' /etc/group)" - - if [[ ! -z "$out" ]]; then - echo - echo Appending the following group entries to /usr/lib/group - echo "$out" - echo "$out" >>/usr/lib/group - fi -fi - -if [ -f /etc/passwd ] || [ -f /etc/group ]; then - echo - echo "Warning: Make sure processed users and groups are from installed programs!" -fi - -# # Create defaults for /etc/passwd, /etc/group -# cat </etc/passwd -# root:x:0:0:root:/root:/bin/bash -# EOT -# cat </etc/group -# root:x:0: -# wheel:x:10: -# EOT - -# Extra lock files created by container processes that might cause issues -rm -rf \ - /etc/.pwd.lock \ - /etc/passwd- \ - /etc/group- \ - /etc/shadow- \ - /etc/gshadow- \ - /etc/subuid- \ - /etc/subgid- \ - /.dockerenv - -# # Merge /usr/etc to /etc -# # OSTree will error out if both dirs exist -# # And rpm-ostree will be confused and use only one of them -# if [ -d /usr/etc ]; then -# echo -# echo WARNING: FOUND /usr/etc. MERGING TO ETC FOR COMPATIBILITY -# echo EXPECT PERMISSIONS ISSUES ON THE MERGED PATHS -# echo The following files from /usr/etc will be merged to /etc: -# tree /usr/etc -# -# echo -# rsync -aAX --numeric-ids --checksum --links /usr/etc/ /etc -# rm -rf /usr/etc -# fi -# -# # Move /etc to /usr/etc -# mv /etc /usr/ - -# ...normal ublue-inspired steps continue. diff --git a/build_files/rpm-keys/1password.asc b/build_files/rpm-keys/1password.asc deleted file mode 100644 index 6409b4a..0000000 --- a/build_files/rpm-keys/1password.asc +++ /dev/null @@ -1,50 +0,0 @@ ------BEGIN PGP PUBLIC KEY BLOCK----- - -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 -P4I7jHwe0BN3iNAG1nKbGg== -=+LeX ------END PGP PUBLIC KEY BLOCK----- - diff --git a/build_files/rpm-keys/tailscale.gpg b/build_files/rpm-keys/tailscale.gpg deleted file mode 100644 index a137e36..0000000 --- a/build_files/rpm-keys/tailscale.gpg +++ /dev/null @@ -1,52 +0,0 @@ ------BEGIN PGP PUBLIC KEY BLOCK----- - -mQINBF5UmbgBEADAA5mxC8EoWEf53RVdlhQJbNnQW7fctUA5yNcGUbGGGTk6XFqO -nlek0Us0FAl5KVBgcS0Bj+VSwKVI/wx91tnAWI36CHeMyPTawdT4FTcS2jZMHbcN -UMqM1mcGs3wEQmKz795lfy2cQdVktc886aAF8hy1GmZDSs2zcGMvq5KCNPuX3DD5 -INPumZqRTjwSwlGptUZrJpKWH4KvuGr5PSy/NzC8uSCuhLbFJc1Q6dQGKlQxwh+q -AF4uQ1+bdy92GHiFsCMi7q43hiBg5J9r55M/skboXkNBlS6kFviP+PADHNZe5Vw0 -0ERtD/HzYb3cH5YneZuYXvnJq2/XjaN6OwkQXuqQpusB5fhIyLXE5ZqNlwBzX71S -779tIyjShpPXf1HEVxNO8TdVncx/7Zx/FSdwUJm4PMYQmnwBIyKlYWlV2AGgfxFk -mt2VexyS5s4YA1POuyiwW0iH1Ppp9X14KtOfNimBa0yEzgW3CHTEg55MNZup6k2Q -mRGtRjeqM5cjrq/Ix15hISmgbZogPRkhz/tcalK38WWAR4h3N8eIoPasLr9i9OVe -8aqsyXefCrziaiJczA0kCqhoryUUtceMgvaHl+lIPwyW0XWwj+0q45qzjLvKet+V -Q8oKLT1nMr/whgeSJi99f/jE4sWIbHZ0wwR02ZCikKnS05arl3v+hiBKPQARAQAB -tERUYWlsc2NhbGUgSW5jLiAoUGFja2FnZSByZXBvc2l0b3J5IHNpZ25pbmcga2V5 -KSA8aW5mb0B0YWlsc2NhbGUuY29tPokCTgQTAQgAOBYhBCWWqZ6qszghiTwKeUWM -qDKVf1hoBQJeVJm4AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEEWMqDKV -f1hoWHEP/1DYd9WZrodyV5zy1izvj0FXtUReJi374gDn3cHrG6uYtXcE9HWZhxQD -6nDgYuey5sBhLvPQiE/sl5GYXNw/O95XVk8HS54BHCCYq1GeYkZaiCGLGFBA08JK -7PZItGsfdJHwHfhSMtGPS7Cpmylje9gh8ic56NAhC7c5tGTlD69Y8zGHjnRQC6Hg -wF34jdp8JTQpSctpmiOxOXN+eH8N59zb0k30CUym1Am438AR0PI6RBTnubBH+Xsc -eQhLJnmJ1bM6GP4agXw5T1G/qp95gjIddHXzOkEvrpVfJFCtp91VIlBwycspKYVp -1IKAdPM6CVf/YoDkawwm4y4OcmvNarA5dhWBG0Xqse4v1dlYbiHIFcDzXuMyrHYs -D2Wg8Hx8TD64uBHY0fp24nweCLnaZCckVUsnYjb0A494lgwveswbZeZ6JC5SbDKH -Tc2SE4jq+fsEEJsqsdHIC04d+pMXI95HinJHU1SLBTeKLvEF8Zuk7RTJyaUTjs7h -Ne+xWDmRjjR/D/GXBxNrM9mEq6Jvp/ilYTdWwAyrSmTdotHb+NWjAGpJWj5AZCH9 -HeBr2mtVhvTu3KtCQmGpRiR18zMbmemRXUh+IX5hpWGzynhtnSt7vXOvhJdqqc1D -VennRMQZMb09wJjPcvLIApUMl69r29XmyB59NM3UggK/UCJrpYfmuQINBF5UmbgB -EADTSKKyeF3XWDxm3x67MOv1Zm3ocoe5xGDRApPkgqEMA+7/mjVlahNXqA8btmwM -z1BH5+trjOUoohFqhr9FPPLuKaS/pE7BBP38KzeA4KcTiEq5FQ4JzZAIRGyhsAr+ -6bxcKV/tZirqOBQFC7bH2UAHH7uIKHDUbBIDFHjnmdIzJ5MBPMgqvSPZvcKWm40g -W+LWMGoSMH1Uxd+BvW74509eezL8p3ts42txVNvWMSKDkpiCRMBhfcf5c+YFXWbu -r5qus2mnVw0hIyYTUdRZIkOcYBalBjewVmGuSIISnUv76vHz133i0zh4JcXHUDqc -yLBUgVWckqci32ahy3jc4MdilPeAnjJQcpJVBtMUNTZ4KM7UxLmOa5hYwvooliFJ -wUFPB+1ZwN8d+Ly12gRKf8qA/iL8M5H4nQrML2dRJ8NKzP2U73Fw+n6S1ngrDX8k -TPhQBq4EDjDyX7SW3Liemj5BCuWJAo53/2cL9P9I5Nu3i2pLJOHzjBSXxWaMMmti -kopArlSMWMdsGgb0xYX+aSV7xW+tefYZJY1AFJ1x2ZgfIc+4zyuXnHYA2jVYLAfF -pApqwwn8JaTJWNhny/OtAss7XV/WuTEOMWXaTO9nyNmHla9KjxlBkDJG9sCcgYMg -aCAnoLRUABCWatxPly9ZlVbIPPzBAr8VN/TEUbceAH0nIwARAQABiQI2BBgBCAAg -FiEEJZapnqqzOCGJPAp5RYyoMpV/WGgFAl5UmbgCGwwACgkQRYyoMpV/WGji9w/8 -Di9yLnnudvRnGLXGDDF2DbQUiwlNeJtHPHH4B9kKRKJDH1Rt5426Lw8vAumDpBlR -EeuT6/YQU+LSapWoDzNcmDLzoFP7RSQaB9aL/nJXv+VjlsVH/crpSTTgGDs8qGsL -O3Y2U1Gjo5uMBoOfXwS8o1VWO/5eUwS0KH7hpbOuZcf9U9l1VD2YpGfnMwX1rnre -INJqseQAUL3oyNl76gRzyuyQ4AIA06r40hZDgybH0ADN1JtfVk8z4ofo/GcfoXqm -hifWJa2SwwHeijhdN1T/kG0FZFHs1DBuBYJG3iJ3/bMeL15j1OjncIYIYccdoEUd -uHnp4+ZYj5kND0DFziTvOC4WyPpv3BlBVariPzEnEqnhjx5RYwMabtTXoYJwUkxX -2gAjKqh2tXissChdwDGRNASSDrChHLkQewx+SxT5kDaOhB84ZDnp+urn9A+clLkN -lZMsMQUObaRW68uybSbZSmIWFVM1GovRMgrPG3T6PAykQhFyE/kMFrv5KpPh7jDj -5JwzQkxLkFMcZDdS43VymKEggxqtM6scIRU55i059fLPAVXJG5in1WhMNsmt49lb -KqB6je3plIWOLSPuCJ/kR9xdFp7Qk88GCXEd0+4z/vFn4hoOr85NXFtxhS8k9GfJ -mM/ZfUq7YmHR+Rswe0zrrCwTDdePjGMo9cHpd39jCvc= -=AIVM ------END PGP PUBLIC KEY BLOCK----- diff --git a/disk_config/disk.toml b/disk_config/disk.toml deleted file mode 100644 index 7478400..0000000 --- a/disk_config/disk.toml +++ /dev/null @@ -1,3 +0,0 @@ -[[customizations.filesystem]] -mountpoint = "/" -minsize = "20 GiB" diff --git a/disk_config/iso-gnome.toml b/disk_config/iso-gnome.toml deleted file mode 100644 index 0a9c84f..0000000 --- a/disk_config/iso-gnome.toml +++ /dev/null @@ -1,20 +0,0 @@ -[customizations.installer.kickstart] -contents = """ -%post -bootc switch --mutate-in-place --transport registry ghcr.io/ublue-os/image-template:latest -%end -""" - -[customizations.installer.modules] -enable = [ - "org.fedoraproject.Anaconda.Modules.Storage", - "org.fedoraproject.Anaconda.Modules.Runtime" -] -disable = [ - "org.fedoraproject.Anaconda.Modules.Network", - "org.fedoraproject.Anaconda.Modules.Security", - "org.fedoraproject.Anaconda.Modules.Services", - "org.fedoraproject.Anaconda.Modules.Users", - "org.fedoraproject.Anaconda.Modules.Subscription", - "org.fedoraproject.Anaconda.Modules.Timezone" -] diff --git a/disk_config/iso-kde.toml b/disk_config/iso-kde.toml deleted file mode 100644 index 17d2787..0000000 --- a/disk_config/iso-kde.toml +++ /dev/null @@ -1,21 +0,0 @@ -[customizations.installer.kickstart] -contents = """ -%post -bootc switch --mutate-in-place --transport registry ghcr.io/ublue-os/image-template:latest -%end -""" - -[customizations.installer.modules] -enable = [ - "org.fedoraproject.Anaconda.Modules.Storage", - "org.fedoraproject.Anaconda.Modules.Runtime", - "org.fedoraproject.Anaconda.Modules.Network", - "org.fedoraproject.Anaconda.Modules.Security", - "org.fedoraproject.Anaconda.Modules.Services", - "org.fedoraproject.Anaconda.Modules.Users", - "org.fedoraproject.Anaconda.Modules.Timezone" -] - -disable = [ - "org.fedoraproject.Anaconda.Modules.Subscription", -]