feat: update bluebuild to v1.8. switch type: rpm-ostree to new type: dnf, add new native groupinstall support, and cleanup docker repo
- Rename and update obsolete docker-ce_f41.repo file to f42 and update common-modules.yml to reference the new docker-ce.repo. - Remove old groupinstall scripts. - Switch rpm-ostree plugin to new dnf plugin for better performance and features - Add groupinstall functionality to recipe via new dnf plugin
This commit is contained in:
parent
6386f24d12
commit
d6895209da
5 changed files with 67 additions and 115 deletions
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
|
|
@ -26,7 +26,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
# the build is fully handled by the reusable github action
|
# the build is fully handled by the reusable github action
|
||||||
- name: Build Custom Image
|
- name: Build Custom Image
|
||||||
uses: blue-build/github-action@v1.7
|
uses: blue-build/github-action@v1.8
|
||||||
with:
|
with:
|
||||||
recipe: ${{ matrix.recipe }}
|
recipe: ${{ matrix.recipe }}
|
||||||
cosign_private_key: ${{ secrets.SIGNING_SECRET }}
|
cosign_private_key: ${{ secrets.SIGNING_SECRET }}
|
||||||
|
|
|
||||||
|
|
@ -1,62 +1,62 @@
|
||||||
[docker-ce-stable]
|
[docker-ce-stable]
|
||||||
name=Docker CE Stable - $basearch
|
name=Docker CE Stable - $basearch
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/$basearch/stable
|
baseurl=https://download.docker.com/linux/fedora/42/$basearch/stable
|
||||||
enabled=1
|
enabled=1
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
||||||
[docker-ce-stable-debuginfo]
|
[docker-ce-stable-debuginfo]
|
||||||
name=Docker CE Stable - Debuginfo $basearch
|
name=Docker CE Stable - Debuginfo $basearch
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/debug-$basearch/stable
|
baseurl=https://download.docker.com/linux/fedora/42/debug-$basearch/stable
|
||||||
enabled=0
|
enabled=0
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
||||||
[docker-ce-stable-source]
|
[docker-ce-stable-source]
|
||||||
name=Docker CE Stable - Sources
|
name=Docker CE Stable - Sources
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/source/stable
|
baseurl=https://download.docker.com/linux/fedora/42/source/stable
|
||||||
enabled=0
|
enabled=0
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
||||||
[docker-ce-test]
|
[docker-ce-test]
|
||||||
name=Docker CE Test - $basearch
|
name=Docker CE Test - $basearch
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/$basearch/test
|
baseurl=https://download.docker.com/linux/fedora/42/$basearch/test
|
||||||
enabled=0
|
enabled=0
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
||||||
[docker-ce-test-debuginfo]
|
[docker-ce-test-debuginfo]
|
||||||
name=Docker CE Test - Debuginfo $basearch
|
name=Docker CE Test - Debuginfo $basearch
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/debug-$basearch/test
|
baseurl=https://download.docker.com/linux/fedora/42/debug-$basearch/test
|
||||||
enabled=0
|
enabled=0
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
||||||
[docker-ce-test-source]
|
[docker-ce-test-source]
|
||||||
name=Docker CE Test - Sources
|
name=Docker CE Test - Sources
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/source/test
|
baseurl=https://download.docker.com/linux/fedora/42/source/test
|
||||||
enabled=0
|
enabled=0
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
||||||
[docker-ce-nightly]
|
[docker-ce-nightly]
|
||||||
name=Docker CE Nightly - $basearch
|
name=Docker CE Nightly - $basearch
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/$basearch/nightly
|
baseurl=https://download.docker.com/linux/fedora/42/$basearch/nightly
|
||||||
enabled=0
|
enabled=0
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
||||||
[docker-ce-nightly-debuginfo]
|
[docker-ce-nightly-debuginfo]
|
||||||
name=Docker CE Nightly - Debuginfo $basearch
|
name=Docker CE Nightly - Debuginfo $basearch
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/debug-$basearch/nightly
|
baseurl=https://download.docker.com/linux/fedora/42/debug-$basearch/nightly
|
||||||
enabled=0
|
enabled=0
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
||||||
[docker-ce-nightly-source]
|
[docker-ce-nightly-source]
|
||||||
name=Docker CE Nightly - Sources
|
name=Docker CE Nightly - Sources
|
||||||
baseurl=https://download.docker.com/linux/fedora/41/source/nightly
|
baseurl=https://download.docker.com/linux/fedora/42/source/nightly
|
||||||
enabled=0
|
enabled=0
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
gpgkey=https://download.docker.com/linux/fedora/gpg
|
gpgkey=https://download.docker.com/linux/fedora/gpg
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -oex pipefail
|
|
||||||
set +u
|
|
||||||
|
|
||||||
dnf groupinstall "C Development Tools and Libraries" "Development Tools"
|
|
||||||
|
|
@ -1,45 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -oex pipefail
|
|
||||||
set +u
|
|
||||||
|
|
||||||
# Find the dnf groupinstall lines and extract quoted strings
|
|
||||||
VALUE="$(grep '^dnf groupinstall' /tmp/files/scripts/groupinstall.sh | grep -o '"[^"]*"' | tr '\n' ' ')"
|
|
||||||
echo "Extracted VALUE: $VALUE"
|
|
||||||
|
|
||||||
if [ -z "$VALUE" ]; then
|
|
||||||
echo "No groups found in build.sh"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Initialize an empty array
|
|
||||||
declare -a GROUP_ARRAY
|
|
||||||
|
|
||||||
|
|
||||||
# Use read with a custom delimiter to split the input string
|
|
||||||
while IFS='"' read -ra parts; do
|
|
||||||
for part in "${parts[@]}"; do
|
|
||||||
# Trim leading and trailing spaces and check if the part is not empty
|
|
||||||
trimmed=$(echo "$part" | xargs)
|
|
||||||
if [[ -n "$trimmed" ]]; then
|
|
||||||
GROUP_ARRAY+=("$trimmed")
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
done <<< "$VALUE"
|
|
||||||
echo "Raw Array without double-quotes: ${GROUP_ARRAY[*]}"
|
|
||||||
|
|
||||||
IS_DNF5=$(dnf --version | { grep -sc dnf5 || test $? = 1; })
|
|
||||||
echo "IS_DNF5: $IS_DNF5 (dnf4 = 0, else dnf5)"
|
|
||||||
for GROUP_E in "${GROUP_ARRAY[@]}"; do
|
|
||||||
echo "Getting pkgs for group: $GROUP_E"
|
|
||||||
if [ "$IS_DNF5" -ne 0 ]; then
|
|
||||||
#dnf5
|
|
||||||
OUTPUT="$OUTPUT $(dnf group info "$GROUP_E" 2>&1 | grep -E "packages|^[[:space:]]*:" | cut -d: -f2 | tr -s ' ' | tr -d '\n' | sed 's/^ //; s/ $//')"
|
|
||||||
else
|
|
||||||
#dnf4
|
|
||||||
OUTPUT="$OUTPUT $(dnf group info "$GROUP_E" 2>&1 | grep -v : | tr -d '\n' | tr -s ' ' | cut -c2-)"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
|
|
||||||
sed -i "s/^dnf groupinstall.*/rpm-ostree install $OUTPUT}/" /tmp/files/scripts/groupinstall.sh
|
|
||||||
|
|
@ -1,10 +1,6 @@
|
||||||
modules:
|
modules:
|
||||||
#- type: script
|
|
||||||
# scripts:
|
|
||||||
# - prepare_groupinstall.sh
|
|
||||||
- type: script
|
- type: script
|
||||||
scripts:
|
scripts:
|
||||||
#- groupinstall.sh
|
|
||||||
- download_install_rpms.sh
|
- download_install_rpms.sh
|
||||||
- type: files
|
- type: files
|
||||||
files:
|
files:
|
||||||
|
|
@ -14,14 +10,21 @@ modules:
|
||||||
files:
|
files:
|
||||||
- source: system/etc/modprobe.d/
|
- source: system/etc/modprobe.d/
|
||||||
destination: /etc/modprobe.d/
|
destination: /etc/modprobe.d/
|
||||||
- type: rpm-ostree
|
- type: dnf
|
||||||
repos:
|
repos:
|
||||||
|
files:
|
||||||
- https://packages.microsoft.com/yumrepos/vscode/config.repo
|
- https://packages.microsoft.com/yumrepos/vscode/config.repo
|
||||||
- docker-ce_f41.repo #manually use 41 until docker repo is ready with 42
|
- docker-ce.repo
|
||||||
keys:
|
keys:
|
||||||
- https://packages.microsoft.com/keys/microsoft.asc
|
- https://packages.microsoft.com/keys/microsoft.asc
|
||||||
- https://download.docker.com/linux/fedora/gpg
|
- https://download.docker.com/linux/fedora/gpg
|
||||||
|
group-install:
|
||||||
|
with-optional: true
|
||||||
|
packages:
|
||||||
|
- development-tools
|
||||||
|
- c-development
|
||||||
install:
|
install:
|
||||||
|
packages:
|
||||||
- vlc
|
- vlc
|
||||||
- usbguard
|
- usbguard
|
||||||
- zsh
|
- zsh
|
||||||
|
|
@ -87,7 +90,7 @@ modules:
|
||||||
include:
|
include:
|
||||||
- zz1-power-button-settings.gschema.override
|
- zz1-power-button-settings.gschema.override
|
||||||
- type: default-flatpaks
|
- type: default-flatpaks
|
||||||
notify: true # Send notification after install/uninstall is finished
|
notify: true
|
||||||
system:
|
system:
|
||||||
install:
|
install:
|
||||||
- net.nokyan.Resources
|
- net.nokyan.Resources
|
||||||
|
|
@ -120,5 +123,5 @@ modules:
|
||||||
system:
|
system:
|
||||||
enabled:
|
enabled:
|
||||||
- docker.service
|
- docker.service
|
||||||
- type: signing # sets up the proper policy & signing files for signed images to work fully
|
- type: signing
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue