Compare commits
11 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
781895866f | ||
|
|
1ef441bdb3 | ||
| 74ff4a4e6c | |||
|
|
a395381b71 | ||
| 612ca8c340 | |||
|
|
fa72929f39 | ||
|
|
fdf36adb8b | ||
|
|
a743314472 | ||
|
|
8e0acef7aa | ||
|
|
87303d3fc4 | ||
|
|
f465587ca5 |
9 changed files with 47 additions and 56 deletions
25
bootupd.yaml
25
bootupd.yaml
|
|
@ -12,21 +12,14 @@ postprocess:
|
||||||
# Transforms /usr/lib/ostree-boot into a bootupd-compatible update payload
|
# Transforms /usr/lib/ostree-boot into a bootupd-compatible update payload
|
||||||
/usr/bin/bootupctl backend generate-update-metadata
|
/usr/bin/bootupctl backend generate-update-metadata
|
||||||
|
|
||||||
# Trigger a bootloader update on boot
|
# Enable migration to a static GRUB config
|
||||||
cat > /usr/lib/systemd/system/bootloader-update.service << 'EOF'
|
install -dm0755 /usr/lib/systemd/system/bootloader-update.service.d
|
||||||
[Unit]
|
cat > /usr/lib/systemd/system/bootloader-update.service.d/migrate-static-grub-config.conf << 'EOF'
|
||||||
Description=Update bootloader on boot
|
|
||||||
Documentation=https://github.com/coreos/bootupd
|
|
||||||
ConditionFirmware=uefi
|
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=oneshot
|
ExecStart=/usr/bin/bootupctl migrate-static-grub-config
|
||||||
ExecStart=/usr/bin/bootupctl update
|
|
||||||
RemainAfterExit=yes
|
|
||||||
MountFlags=slave
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
||||||
EOF
|
EOF
|
||||||
chmod 644 /usr/lib/systemd/system/bootloader-update.service
|
|
||||||
echo "enable bootloader-update.service" > /usr/lib/systemd/system-preset/81-iot.preset
|
echo "enable bootloader-update.service" >> /usr/lib/systemd/system-preset/80-iot.preset
|
||||||
|
|
||||||
|
# Turn permissive mode on for bootupd until all SELinux issues are fixed
|
||||||
|
semanage permissive --noreload --add bootupd_t
|
||||||
|
|
|
||||||
13
composefs.yaml
Normal file
13
composefs.yaml
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Enable composefs
|
||||||
|
# See: https://fedoraproject.org/wiki/Changes/ComposefsAtomicDesktops
|
||||||
|
# https://fedoraproject.org/wiki/Changes/ComposefsAtomicCoreOSIoT
|
||||||
|
postprocess:
|
||||||
|
- |
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -xeuo pipefail
|
||||||
|
|
||||||
|
cat >> /usr/lib/ostree/prepare-root.conf << 'EOF'
|
||||||
|
[composefs]
|
||||||
|
enabled = yes
|
||||||
|
EOF
|
||||||
|
|
||||||
|
|
@ -11,8 +11,8 @@ tree_name = docker-host
|
||||||
tree_file = %(os_name)s-%(tree_name)s.json
|
tree_file = %(os_name)s-%(tree_name)s.json
|
||||||
arch = x86_64
|
arch = x86_64
|
||||||
release = f42
|
release = f42
|
||||||
ref = %(os_name)s/rawhide/%(arch)s/%(tree_name)s
|
ref = %(os_name)s/stable/%(arch)s/%(tree_name)s
|
||||||
yum_baseurl = http://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/%(arch)s/os/
|
yum_baseurl = http://dl.fedoraproject.org/pub/fedora/linux/releases/42/Everything/%(arch)s/os/
|
||||||
# lorax_additional_repos = http://127.0.0.1/fedora-iot/local-overrides
|
# lorax_additional_repos = http://127.0.0.1/fedora-iot/local-overrides
|
||||||
lorax_include_packages = fedora-productimg-iot
|
lorax_include_packages = fedora-productimg-iot
|
||||||
docker_os_name = fedora
|
docker_os_name = fedora
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,12 @@
|
||||||
include:
|
include:
|
||||||
- bootupd.yaml
|
- bootupd.yaml
|
||||||
# Workaround for https://bugzilla.redhat.com/show_bug.cgi?id=2305291
|
# Enable composefs
|
||||||
- grub2-workaround.yaml
|
- composefs.yaml
|
||||||
ref: fedora/rawhide/${basearch}/iot
|
# Read only sysroot
|
||||||
|
- sysroot-ro.yaml
|
||||||
|
ref: fedora/stable/${basearch}/iot
|
||||||
repos: []
|
repos: []
|
||||||
selinux: true
|
selinux: true
|
||||||
ima: true
|
|
||||||
tmp-is-dir: true
|
tmp-is-dir: true
|
||||||
recommends: false
|
recommends: false
|
||||||
documentation: false
|
documentation: false
|
||||||
|
|
@ -100,7 +101,6 @@ packages:
|
||||||
- criu-libs
|
- criu-libs
|
||||||
- cryptsetup
|
- cryptsetup
|
||||||
- curl
|
- curl
|
||||||
- dbus-parsec
|
|
||||||
- dnf5
|
- dnf5
|
||||||
- dnf5-plugins
|
- dnf5-plugins
|
||||||
- dosfstools
|
- dosfstools
|
||||||
|
|
@ -130,7 +130,6 @@ packages:
|
||||||
- iwd
|
- iwd
|
||||||
- iwlwifi-mvm-firmware
|
- iwlwifi-mvm-firmware
|
||||||
- kernel
|
- kernel
|
||||||
- kernel-tools
|
|
||||||
- keyutils
|
- keyutils
|
||||||
- less
|
- less
|
||||||
- libsss_sudo
|
- libsss_sudo
|
||||||
|
|
@ -146,11 +145,9 @@ packages:
|
||||||
- openssh-server
|
- openssh-server
|
||||||
- passt
|
- passt
|
||||||
- passt-selinux
|
- passt-selinux
|
||||||
- parsec
|
|
||||||
- pinentry
|
- pinentry
|
||||||
- podman
|
- podman
|
||||||
- policycoreutils
|
- policycoreutils
|
||||||
- policycoreutils-python-utils
|
|
||||||
- polkit
|
- polkit
|
||||||
- procps-ng
|
- procps-ng
|
||||||
- realtek-firmware
|
- realtek-firmware
|
||||||
|
|
@ -179,7 +176,6 @@ packages:
|
||||||
- wireless-regdb
|
- wireless-regdb
|
||||||
- xfsprogs
|
- xfsprogs
|
||||||
- xz
|
- xz
|
||||||
- zezere-ignition
|
|
||||||
- zram-generator
|
- zram-generator
|
||||||
- zram-generator-defaults
|
- zram-generator-defaults
|
||||||
packages-aarch64:
|
packages-aarch64:
|
||||||
|
|
@ -200,13 +196,10 @@ units:
|
||||||
- fedora-iot-config-remote-fix.service
|
- fedora-iot-config-remote-fix.service
|
||||||
- firewalld.service
|
- firewalld.service
|
||||||
- sshd.service
|
- sshd.service
|
||||||
|
- systemd-firstboot.service
|
||||||
- greenboot-grub2-set-counter.service
|
- greenboot-grub2-set-counter.service
|
||||||
- greenboot-grub2-set-success.service
|
- greenboot-grub2-set-success.service
|
||||||
- greenboot-healthcheck.service
|
- greenboot-healthcheck.service
|
||||||
- greenboot-rpm-ostree-grub2-check-fallback.service
|
- greenboot-rpm-ostree-grub2-check-fallback.service
|
||||||
- greenboot-status.service
|
- greenboot-status.service
|
||||||
- greenboot-task-runner.service
|
- greenboot-task-runner.service
|
||||||
- parsec.service
|
|
||||||
- dbus-parsec.service
|
|
||||||
- zezere_ignition.timer
|
|
||||||
- zezere_ignition_banner.service
|
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1,2 @@
|
||||||
include: fedora-iot-base.yaml
|
include: fedora-iot-base.yaml
|
||||||
ref: fedora/rawhide/${basearch}/updates/iot
|
ref: fedora/stable/${basearch}/updates/iot
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1,2 @@
|
||||||
include: fedora-iot-base.yaml
|
include: fedora-iot-base.yaml
|
||||||
ref: fedora/rawhide/${basearch}/testing/iot
|
ref: fedora/stable/${basearch}/testing/iot
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
include: fedora-iot-base.yaml
|
include: fedora-iot-base.yaml
|
||||||
ref: fedora/rawhide/${basearch}/iot
|
ref: fedora/stable/${basearch}/iot
|
||||||
repos:
|
repos:
|
||||||
- fedora-42
|
- fedora-42
|
||||||
|
|
|
||||||
|
|
@ -1,22 +0,0 @@
|
||||||
# Temporarily disable new GRUB2 config options until we can ensure that we
|
|
||||||
# have an updated bootloader via bootupd.
|
|
||||||
# This is workaround for: https://bugzilla.redhat.com/show_bug.cgi?id=2305291
|
|
||||||
# See: https://github.com/fedora-silverblue/issue-tracker/issues/587
|
|
||||||
postprocess:
|
|
||||||
- |
|
|
||||||
#!/usr/bin/env bash
|
|
||||||
set -xeuo pipefail
|
|
||||||
|
|
||||||
# Completely disable this module
|
|
||||||
sed -i '2i exit 0' /etc/grub.d/25_bli
|
|
||||||
|
|
||||||
# Skip check that was not performed in previous Fedora versions
|
|
||||||
sed -i '/fwsetup --is-supported/d' /etc/grub.d/30_uefi-firmware
|
|
||||||
sed -i '/\tif/d' /etc/grub.d/30_uefi-firmware
|
|
||||||
sed -i '/\tfi/d' /etc/grub.d/30_uefi-firmware
|
|
||||||
sed -i 's/\t\t/\t/' /etc/grub.d/30_uefi-firmware
|
|
||||||
|
|
||||||
# Verify that the content matches what we expect the file to look like.
|
|
||||||
# This will fail the build here instead of breaking users' systems.
|
|
||||||
hash="5a77a16c6a94e664e2e96a870f4531b9a0b4e63be1f46751d01e774629a8c84b"
|
|
||||||
echo "$hash /etc/grub.d/30_uefi-firmware" | sha256sum -c
|
|
||||||
14
sysroot-ro.yaml
Normal file
14
sysroot-ro.yaml
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
# Set up default root config to mount sysroot as read only
|
||||||
|
# See: https://github.com/fedora-iot/iot-distro/issues/81
|
||||||
|
# https://fedoraproject.org/wiki/Changes/Silverblue_Kinoite_readonly_sysroot
|
||||||
|
|
||||||
|
postprocess:
|
||||||
|
- |
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -xeuo pipefail
|
||||||
|
|
||||||
|
install -dm 0755 -o 0 -g 0 /usr/lib/ostree
|
||||||
|
cat >> /usr/lib/ostree/prepare-root.conf << 'EOF'
|
||||||
|
[sysroot]
|
||||||
|
readonly = true
|
||||||
|
EOF
|
||||||
Loading…
Add table
Add a link
Reference in a new issue