Releases: bootc-dev/bootc
v1.8.0
Changes
New features
- Add systemd structured logging for bootc state changes by @gursewak1997 in #1522
- Un-hide soft-reboot by @cgwalters in #1580
Bug fixes
- #1567 via
Bump containers-image-proxy, ocidir, oci-spec and composefs-rs
by @cgwalters in #1584 - tar: Create a new xattrs file for each checksum by @ckyrouac in #1578 (ensures we support rechunking large images)
Implementation improvements
We've been doing a lot of foundational work on the composefs branch, hoping to merge it soon!
- crates/*: Fix most clippy lints by @cgwalters in #1551
- More clippy by @cgwalters in #1552
- Move composefs setup root to bootc initramfs by @Johan-Liebert1 in #1550
- Move kernel cmdline parsing to dedicated crate by @jeckersb in #1554
- Bump composefs-rs by @Johan-Liebert1 in #1557
- initramfs: Better error handling by @Johan-Liebert1 in #1556
- initramfs: Convert to library by @Johan-Liebert1 in #1561
- kernel_cmdline: remove
cfg(test)
forrequire_value_*
methods by @jeckersb in #1555 - fix(deps): update auto merged updates by @bootc-bot[bot] in #1566
- Makefile: Create storage symlink as relative by @jeckersb in #1577
- Deduplicate main error printing by @cgwalters in #1579
- cfs: only get sysroot storage when repo is not supplied by @jeckersb in #1581
- Implementation for /etc merge by @Johan-Liebert1 in #1485
- Release 1.8.0 by @bootc-bot[bot] in #1585
Full Changelog: v1.7.1...v1.8.0
Assets
bootc-1.8.0-vendor.tar.zstd
- Vendored dependencies archivebootc-1.8.0.tar.zstd
- Source archive
Release v1.7.1
bootc 1.7.1
Changes
This fixes an important regression in the sysroot locking: #1544
Assets
bootc-1.7.1-vendor.tar.zstd
- Vendored dependencies archivebootc-1.7.1.tar.zstd
- Source archive
What's Changed
- governance: add community manager role by @castrojo in #1538
- build-sys: Work around #1546 by @cgwalters in #1547
- Release 1.7.1 by @bootc-actions-token[bot] in #1549
Full Changelog: v1.7.0...v1.7.1
Release v1.7.0
bootc 1.7.0
This release introduces the experimental feature of soft-reboots, which is currently hidden
while stabilization continues on the OSTree side. For more details, see ostreedev/ostree#3503.
It also adds support for setting a non-default OSTree bootloader backend (#1532), which is required for Aboot images.
Additional improvements in this release include further enablement of the ComposeFS back-end, updates to the rechunker, CI enhancements, and various bug fixes.
What's Changed
- Fix warnings for
mismatched_lifetime_syntaxes
lint by @jeckersb in #1497 - chore(deps): update cargo dependencies by @p5 in #1499
- build-sys: Some Cargo.toml cleanups by @cgwalters in #1501
- Add automated PR reviewer rotation system by @gursewak1997 in #1491
- Add initramfs infrastructure by @cgwalters in #1500
- Bump composefs-fs by @cgwalters in #1503
- fix(blockdev): include "internals" when spawning loopback-cleanup-helper by @SamD2021 in #1511
- Resolve GH_TOKEN conflict in auto-reviewer workflow by @gursewak1997 in #1508
- fix: simplify reviewer assignment using gh pr edit by @gursewak1997 in #1517
- ci/tmt: distro-sync ostree by @cgwalters in #1515
- system-reinstall-bootc: Ensure stdout is flushed by @cgwalters in #1519
- store: Remove dynamic abstraction by @cgwalters in #1518
- Map grub feature to composefs-backend and import parser/bls by @cgwalters in #1512
- Add missing perms and fix reviewer assignment API call by @gursewak1997 in #1521
- lib: add support for soft-reboots by @jmarrero in #1392
- Update workflow to use Github App token for reviewer assignment by @gursewak1997 in #1523
- rechunker: Use (path,checksum) when creating exclusive components by @ckyrouac in #1513
- install: Move Aleph bits to a separate module by @cgwalters in #1504
- Some more refactoring of storage by @cgwalters in #1525
- rhsm: Update function call to match new Storage API by @Johan-Liebert1 in #1530
- build-sys: Enable rhsm feature on rhel-like systems by default by @cgwalters in #1531
- sysroot: Log locking to stderr, not stdout by @cgwalters in #1535
- ostree: Use indicatif + async for lock wait by @cgwalters in #1536
- install: Automatically configure aboot by @alexlarsson in #1532
- cli: hide --soft-reboot as ostree side needs further stabilization by @jmarrero in #1539
- Release 1.7.0 by @bootc-actions-token[bot] in #1540
New Contributors
- @SamD2021 made their first contribution in #1511
- @alexlarsson made their first contribution in #1532
Full Changelog: v1.6.0...v1.7.0
Release v1.6.0
What's Changed
Bug fixes, internal cleanup, CI improvements, doc updates, and feature prep.
Docs
- Update ADOPTERS.md: Label HeliumOS as vendor, not end-user by @imbev in #1456
- docs: Elaborate a bit on sysusers and /usr by @cgwalters in #1457
- docs: add Playtron GameOS by @LukeShortCloud in #1466
- docs: add documentation for root.transient-ro feature by @gursewak1997 in #1470
- docs: add LFX Insights badges by @castrojo in #1467
- cli: fix documentation of
bootc image cmd
by @bachorp in #1437 - docs: We're read only by default in a container by @cgwalters in #1474
CI
- ci: Shorten the release interval to 19 days by @ckyrouac in #1462
- Revert "ci: periodically run update-generated" by @miabbott in #1489
- Fix autovendor workflow CLI directory path by @jeckersb in #1487
- ci: Release every 3 weeks starting from 2025-08-04 by @ckyrouac in #1493
- ci: Refactor release action to use app and create-pull-request by @ckyrouac in #1494
- ci: Drop ppc64le && Fedora 41 by @cgwalters in #1447
- ci: Check if it's time for release earlier in gh action by @ckyrouac in #1454
- build: Add actions to automate release by @ckyrouac in #1429
ComposeFS
- Write nom parser for Grub menuentries by @cgwalters in #1480
- Add bootc internals cfs by @cgwalters in #1477
- Bump composefs-rs by @Johan-Liebert1 in #1445
- store: Add support for composefs-rs by @cgwalters in #1471
Kargs
- Improve kernel argument parsing by @jeckersb in #1476
- Kargs followup by @cgwalters in #1478
- kernel: Add value helpers by @cgwalters in #1483
- kernel args: Shuffle module names by @cgwalters in #1486
- kernel_cmdline: More cleanups and API additions by @cgwalters in #1490
Other fixes
- Dockerfile: Support pulling in the continuous repo by @cgwalters in #1446
- reboot: Quiet the output from systemd-run by @cgwalters in #1450
- Release 1.6.0 by @bootc-actions-token[bot] in #1495
- Move all crates under
crates/
by @cgwalters in #1413 - osbuild: Drop use of Task by @cgwalters in #1427
- Add a test case for our internal reboot command by @cgwalters in #1426
- blockdev: Fix loopback device resource leak on signal interruption by @gursewak1997 in #1402
- Revert "blockdev: implement signal-safe loopback device cleanup helper" by @jmarrero in #1440
- chunking: Fix specific component file allocation by @ckyrouac in #1442
- blockdev: implement signal-safe loopback device cleanup helper by @gursewak1997 in #1449
- install: use deployed sysroot as root for bootloader install by @jbtrystram in #1460
- tree-wide: Clean up our re-exec path by @cgwalters in #1463
- unencapsulate: use "inner" stream when finishing Decompressor by @jeckersb in #1415
- Make
ostree container image pull
merge commit reproducible by @jlebon in #1421 - fsverity: use _with_retry by @cgwalters in #1448
- install: ommit mountspec kargs when
--root-mount-spec
is empty by @jbtrystram in #1451 - command: Split up run() method by @cgwalters in #1459
- test: add integration tests for 'bootc switch --apply' by @p5 in #1420
- reboot: Drop use of Task by @cgwalters in #1472
- Drop a few more uses of Task by @cgwalters in #1475
- utils: Move ResultExt to bootc_utils by @cgwalters in #1464
New Contributors
- @bachorp made their first contribution in #1437
- @LukeShortCloud made their first contribution in #1466
- @bootc-actions-token[bot] made their first contribution in #1495
Full Changelog: v1.5.1...v1.6.0
1.5.1
What's Changed
- lib/src/reboot: use valid systemd-run arguments by @p5 in #1417
- Release 1.5.1 by @cgwalters in #1422
Full Changelog: v1.5.0...v1.5.1
Release 1.5.0
This release is withdrawn
This release contains a critical regression: #1416
We will create a new release shortly. For now, avoid this release and use 1.4.0.
This release is primarily a collection of bug fixes and documentation improvements with a handful of small features.
Features
- Create /run/reboot-required by default by @gursewak1997 in #1378
- lib/src/status: add verbose human readable output by @jmarrero in #1399
- chunking: Support exclusive chunks defined via xattrs by @ckyrouac in #1397
- deploy: short-circuit pull if digest pullspec already exists by @jlebon in #1380
Other Fixes
- lib/src/reboot: use systemd-run to execute the reboot by @jmarrero in #1398
- Fix Typos in Documentation by @zeevick10 in #1372
- Bump to newer ocidir and containers-image-proxy by @cgwalters in #1377
- Fix typos in code comments by @leopardracer in #1381
- More reproducibility fixes / switch to canon-json by @champtar in #1347
- ci: periodically run update-generated by @miabbott in #1386
- docs: Update generated by @jeckersb in #1385
- packaging/rpm: Be sure we pull in chcon (and util-linux) by @cgwalters in #1391
- README.md: Add details for Friday Zoom meeting by @jeckersb in #1368
- secrets: Expand on authfile by @cgwalters in #1393
- Rework utils and blockdev crates as -internals in prep for publishing by @cgwalters in #1394
- Bump composefs-rs by @cgwalters in #1403
- systemd: switch bootc-fetch-apply-updates.service to non-aliased command by @p5 in #1405
- Bump composefs-rs and use-libc for rustix by @cgwalters in #1409
- Release 1.5.0 by @ckyrouac in #1412
New Contributors
- @zeevick10 made their first contribution in #1372
Full Changelog: v1.4.0...v1.5.0
Release 1.4.0
What's Changed
New Features
ostree-ext
adds tar_create_parent_dirs
option to ExportOpts
This ensures that upon export, for each layer in the exported image, the directory structure is fully-defined. This removes a source of non-determinism when unpacking the layers for consumption.
- ostree-ext: Add tar_create_parent_dirs to container::ExportOpts by @jeckersb in #1364
- Two minor patches by @cgwalters in #1366
Documentation Improvements
- reinstall: Docs for cleanup script and mount points by @ckyrouac in #1349
- docs: Add bootloaders.md by @cgwalters in #1354
- test: Add README.md in tmt folder for integration test local running by @henrywang in #1357
- Minor Documentation and Comment Corrections by @leopardracer in #1361
- kargs: Clarify a bit more by @cgwalters in #1363
- Fix Typo in Documentation and Improve Iterator Comment Clarity by @kilavvy in #1367
- Fix Typos and Improve Formatting in Documentation by @vtjl10 in #1369
Other Fixes
- ci/gemini: Turn off PR summary by default by @cgwalters in #1342
- cli: Don't emit ANSI codes to stderr by @cgwalters in #1341
- Initial set of system-reinstall-bootc integration tests by @ckyrouac in #1348
- reinstall: Only pull the image if it's not already present by @ckyrouac in #1355
- specfile: exclude doc directories from package by @champtar in #1352
- build-sys: Rework to have toplevel Dockerfile + Justfile by @cgwalters in #1358
- Release 1.4.0 by @jeckersb in #1374
New Contributors
- @leopardracer made their first contribution in #1361
- @kilavvy made their first contribution in #1367
- @vtjl10 made their first contribution in #1369
Full Changelog: v1.3.0...v1.4.0
Release 1.3.0
Important regression fixes
- spec: Don't canonicalize containers-storage by @cgwalters in #1337
This was the cause of us breaking bootc-image-builder. We will be ensuring this never happens in the future.
New features
- lints: Add --no-truncate flag to bootc container lint by @cgwalters in #1324
- feat(status): display pinned deployments by @p5 in #1285
- spec: Add stateroot by @cgwalters in #1319
Other fixes
- Reinstall mount warning by @ckyrouac in #1299
- ostree-ext: Squash some unused warnings by @cgwalters in #1318
- install: Fallback to no sepolicy when init imgstore by @ckyrouac in #1321
- Dedup sepolicy handling by @cgwalters in #1322
- hack: Rework+cleanup container build by @cgwalters in #1295
- docs: Fix typos and clarify content by @cgwalters in #1323
- Rewrite containers org links to bootc-dev org by @jeckersb in #1325
- README.md: Add versioning/semver standards by @jeckersb in #1326
- main: Silence SELinux by @cgwalters in #1328
- README.md: Add link to CNCF slack by @cgwalters in #1334
- ostree-ext: tests: Don't call export_container twice by @jeckersb in #1336
- sysusers: Various fixes by @cgwalters in #1332
- spec: Don't canonicalize containers-storage by @cgwalters in #1337
- ostree-ext: make OCI history reproducible by @champtar in #1339
- Release 1.3.0 by @cgwalters in #1340
New Contributors
Full Changelog: v1.2.0...v1.3.0
v1.2.0
Bug fixes
New features
Other changes
- Dont quote me on this by @cgwalters in #1305
- Release 1.1.8 by @jmarrero in #1304
- docs: fix typos by @omahs in #1307
- fix(switch): don't attempt to parse non-oci image ref formats by @p5 in #1310
- spec: Note we don't canonicalize oci by @cgwalters in #1311
- filesystem: Note initramfs reneneration is required for prepare-root by @cgwalters in #1315
- Release 1.2.0 by @cgwalters in #1317
New Contributors
Full Changelog: v1.1.8...v1.2.0
v1.1.8
Updates to system-reinstall-bootc
- reinstall: Pass RUST_LOG env var into bootc install container by @ckyrouac in #1297
- reinstall: Cleaner formatting of podman bootc install message by @ckyrouac in #1298
Other changes
- store: Improve logging for filtered content by @cgwalters in #1274
- test: Use to-existing-root --acknowledge-destructive by @evan-goode in #1279
- lints: move misplaced docstring for LINT_VAR_RUN by @jeckersb in #1290
- fsck: Don't run ostree fsck by @cgwalters in #1287
- Port from once_cell to std by @cgwalters in #1283
- Split mount code into separate helper crate by @cgwalters in #1288
- status: Prep work for #1285 by @cgwalters in #1291
- Add alongside-cleanup systemd service by @ckyrouac in #1289
- install: Do a dynamic mount for /var/tmp by @cgwalters in #1294
- test: update bootc install script to support Fedora CI gating test by @henrywang in #1282
- store: Add some more debug tracing by @cgwalters in #1296
New Contributors
- @evan-goode made their first contribution in #1279
Full Changelog: v1.1.7...v1.1.8