- How do I list the available revisions?
You’ll need to fetch the commit metadata with ostree pull
and then list the commits with ostree log
. In the example below, fedora-iot
is the name of the ostree remote I am pulling from, yours may just be fedora
or the like.
# ostree pull --commit-metadata-only --depth=<n> fedora-iot:fedora/stable/x86_64/iot
# ostree log fedora-iot: fedora/stable/x86_64/iot
- How do I rebase to a specific revision?
You can then use rpm-ostree deploy
to deploy a specific version. You can specify a version string or a commit hash:
$ sudo rpm-ostree deploy 40.20241010.0
Resolving version '40.20241010.0'
1 metadata, 0 content objects fetched; 592 B transferred in 0 seconds; 0 bytes content written
⠂ Receiving objects; 99% (6641/6695) 5.7 MB/s 257.1 MB
1538 metadata, 5208 content objects fetched; 263691 KiB transferred in 49 seconds; 361.6 MB content written
Receiving objects; 99% (6641/6695) 5.7 MB/s 257.1 MB... done
Staging deployment... done
Freed: 170.5 MB (pkgcache branches: 0)
Upgraded:
ca-certificates 2023.2.62_v7.0.401-6.fc40 -> 2024.2.69_v8.0.401-1.0.fc40
checkpolicy 3.6-3.fc40 -> 3.7-2.fc40
chrony 4.6-1.fc40 -> 4.6.1-1.fc40
containers-common 5:0.60.1-1.fc40 -> 5:0.60.4-1.fc40
containers-common-extra 5:0.60.1-1.fc40 -> 5:0.60.4-1.fc40
coreutils 9.4-7.fc40 -> 9.4-8.fc40
coreutils-common 9.4-7.fc40 -> 9.4-8.fc40
fwupd 1.9.23-1.fc40 -> 1.9.25-1.fc40
fwupd-plugin-modem-manager 1.9.23-1.fc40 -> 1.9.25-1.fc40
fwupd-plugin-uefi-capsule-data 1.9.23-1.fc40 -> 1.9.25-1.fc40
kernel 6.10.10-200.fc40 -> 6.10.12-200.fc40
kernel-core 6.10.10-200.fc40 -> 6.10.12-200.fc40
kernel-modules 6.10.10-200.fc40 -> 6.10.12-200.fc40
kernel-modules-core 6.10.10-200.fc40 -> 6.10.12-200.fc40
kernel-tools 6.10.10-200.fc40 -> 6.10.12-200.fc40
kernel-tools-libs 6.10.10-200.fc40 -> 6.10.12-200.fc40
libselinux 3.6-4.fc40 -> 3.7-5.fc40
libselinux-utils 3.6-4.fc40 -> 3.7-5.fc40
libsemanage 3.6-3.fc40 -> 3.7-2.fc40
libsepol 3.6-3.fc40 -> 3.7-2.fc40
ostree 2024.7-1.fc40 -> 2024.8-1.fc40
ostree-libs 2024.7-1.fc40 -> 2024.8-1.fc40
podman 5:5.2.2-1.fc40 -> 5:5.2.3-1.fc40
policycoreutils 3.6-3.fc40 -> 3.7-3.fc40
policycoreutils-python-utils 3.6-3.fc40 -> 3.7-3.fc40
python-pip-wheel 23.3.2-1.fc40 -> 23.3.2-2.fc40
python3-libselinux 3.6-4.fc40 -> 3.7-5.fc40
python3-libsemanage 3.6-3.fc40 -> 3.7-2.fc40
python3-policycoreutils 3.6-3.fc40 -> 3.7-3.fc40
selinux-policy 40.27-1.fc40 -> 40.28-1.fc40
selinux-policy-targeted 40.27-1.fc40 -> 40.28-1.fc40
Run "systemctl reboot" to start a reboot
Or
$ sudo rpm-ostree deploy 5b5c6e3e635100d0d10dcc232dd8ba11bc03d1b9e948f0f0801a5b3e789333f6
Validating checksum '5b5c6e3e635100d0d10dcc232dd8ba11bc03d1b9e948f0f0801a5b3e789333f6'
2 metadata, 0 content objects fetched; 15 KiB transferred in 0 seconds; 0 bytes content written
⠉ Receiving objects; 98% (6680/6761) 6.2 MB/s 230.9 MB
1386 metadata, 5426 content objects fetched; 237656 KiB transferred in 43 seconds; 298.4 MB content written
Receiving objects; 98% (6680/6761) 6.2 MB/s 230.9 MB... done
Staging deployment... done
Freed: 253.7 MB (pkgcache branches: 0)
Upgraded:
ca-certificates 2023.2.62_v7.0.401-6.fc40 -> 2024.2.69_v8.0.401-1.0.fc40
checkpolicy 3.6-3.fc40 -> 3.7-2.fc40
chrony 4.6-1.fc40 -> 4.6.1-1.fc40
containers-common 5:0.60.1-1.fc40 -> 5:0.60.4-1.fc40
containers-common-extra 5:0.60.1-1.fc40 -> 5:0.60.4-1.fc40
coreutils 9.4-7.fc40 -> 9.4-8.fc40
coreutils-common 9.4-7.fc40 -> 9.4-8.fc40
criu 3.19-4.fc40 -> 4.0-1.fc40
criu-libs 3.19-4.fc40 -> 4.0-1.fc40
fwupd 1.9.23-1.fc40 -> 1.9.25-1.fc40
fwupd-plugin-modem-manager 1.9.23-1.fc40 -> 1.9.25-1.fc40
fwupd-plugin-uefi-capsule-data 1.9.23-1.fc40 -> 1.9.25-1.fc40
kernel 6.10.10-200.fc40 -> 6.11.3-200.fc40
kernel-core 6.10.10-200.fc40 -> 6.11.3-200.fc40
kernel-modules 6.10.10-200.fc40 -> 6.11.3-200.fc40
kernel-modules-core 6.10.10-200.fc40 -> 6.11.3-200.fc40
kernel-tools 6.10.10-200.fc40 -> 6.11.3-200.fc40
kernel-tools-libs 6.10.10-200.fc40 -> 6.11.3-200.fc40
libblkid 2.40.1-1.fc40 -> 2.40.2-1.fc40
libfdisk 2.40.1-1.fc40 -> 2.40.2-1.fc40
libmount 2.40.1-1.fc40 -> 2.40.2-1.fc40
libselinux 3.6-4.fc40 -> 3.7-5.fc40
libselinux-utils 3.6-4.fc40 -> 3.7-5.fc40
libsemanage 3.6-3.fc40 -> 3.7-2.fc40
libsepol 3.6-3.fc40 -> 3.7-2.fc40
libsmartcols 2.40.1-1.fc40 -> 2.40.2-1.fc40
libuuid 2.40.1-1.fc40 -> 2.40.2-1.fc40
ostree 2024.7-1.fc40 -> 2024.8-1.fc40
ostree-libs 2024.7-1.fc40 -> 2024.8-1.fc40
podman 5:5.2.2-1.fc40 -> 5:5.2.3-1.fc40
policycoreutils 3.6-3.fc40 -> 3.7-3.fc40
policycoreutils-python-utils 3.6-3.fc40 -> 3.7-3.fc40
python-pip-wheel 23.3.2-1.fc40 -> 23.3.2-2.fc40
python3-libselinux 3.6-4.fc40 -> 3.7-5.fc40
python3-libsemanage 3.6-3.fc40 -> 3.7-2.fc40
python3-policycoreutils 3.6-3.fc40 -> 3.7-3.fc40
selinux-policy 40.27-1.fc40 -> 40.28-1.fc40
selinux-policy-targeted 40.27-1.fc40 -> 40.28-1.fc40
systemd 255.12-1.fc40 -> 255.13-1.fc40
systemd-libs 255.12-1.fc40 -> 255.13-1.fc40
systemd-pam 255.12-1.fc40 -> 255.13-1.fc40
systemd-resolved 255.12-1.fc40 -> 255.13-1.fc40
systemd-udev 255.12-1.fc40 -> 255.13-1.fc40
util-linux 2.40.1-1.fc40 -> 2.40.2-1.fc40
util-linux-core 2.40.1-1.fc40 -> 2.40.2-1.fc40
vim-data 2:9.1.719-1.fc40 -> 2:9.1.785-1.fc40
vim-minimal 2:9.1.719-1.fc40 -> 2:9.1.785-1.fc40
Run "systemctl reboot" to start a reboot