Fact-checked by Grok 2 weeks ago

OSTree

OSTree is an upgrade system for Linux-based operating systems that performs atomic upgrades of complete filesystem trees, combining a git-like model for committing and downloading bootable filesystem trees with tools for managing deployments and updates. It operates as both a (libostree) and a suite of command-line tools, enabling the replication of read-only OS trees via content-addressed object stores while supporting parallel installations and efficient deduplication through hardlinks. Developed to complement rather than replace traditional package managers, OSTree emphasizes immutability, , and reliability in OS deployment, making it suitable for bare-metal systems, virtual machines, and container-like environments. At its core, OSTree uses a structure—typically located at /ostree/repo—to store filesystem objects in a content-addressed format, similar to repositories, which allows for branching, merging, and history tracking of entire OS images. Deployments are managed in directories like /ostree/deploy/$STATEROOT/$CHECKSUM, where each deployment represents a bootable, versioned tree that can be atomically switched during updates, ensuring that failed upgrades do not corrupt the system. The system maintains two primary writable directories, /etc for and /var for runtime state, overlaid on an otherwise read-only root filesystem to balance immutability with necessary mutability. This design supports features like A/B partitioning for seamless rollbacks, byte-level diffs for low-bandwidth updates, and integration with bootloaders such as to point to the active deployment. As of 2025, OSTree has been adopted in various distributions and projects to enable image-based OS management, including Silverblue and CoreOS, where it serves as the foundation for layering RPM packages atop base images via tools like rpm-ostree; emerging tools like bootc further extend its principles for container-native deployments. In enterprise contexts, such as for Edge and Automotive SIG, it facilitates secure, tamper-proof deployments with read-only /usr partitions and automated health checks for rollback via extensions like Greenboot. By providing a unified approach to OS versioning that works across userspace filesystems and supports HTTP-based replication, OSTree addresses challenges in traditional package-based updates, promoting faster, more reliable system maintenance in embedded, cloud, and desktop scenarios.

Overview

Description

OSTree (libostree) is a and suite of command-line tools for managing bootable, immutable, and versioned filesystem trees in Linux-based operating systems. It integrates a Git-like model for committing and downloading entire filesystem trees with mechanisms for deployment and integration, enabling efficient handling of operating system images as atomic units. At its core, OSTree uses a content-addressed object store where files are checksummed and stored deduplicated, much like objects, to support versioning of full filesystem snapshots. This allows multiple trees to coexist on a single , with shared across versions to minimize overhead, while enforcing immutability to ensure during updates or rollbacks. The supports transactional operations, such as atomic upgrades via hardlink-based checkouts, and facilitates booting into specific tree versions through configurable entries. OSTree's design addresses key challenges in OS deployment by enabling seamless switching between versions, retention of previous states as fallbacks, and sharing of user data like home directories across trees. It is widely adopted for immutable OS distributions, embedded systems, and container runtimes, providing a foundation for reliable, incremental updates over networks like HTTP with GPG verification.

Design Goals

OSTree was designed as an system for Linux-based operating systems, emphasizing upgrades of complete filesystem trees to ensure reliability and predictability in deployments. This approach complements traditional package managers by treating the entire operating system as a versioned, immutable unit, similar to how images or instance replication operates without complex . The core motivation is to enable seamless transitions between OS versions while minimizing and failure risks, allowing systems to boot from consistent snapshots. A primary design principle is the adoption of a "git-like" model for managing operating system binaries, utilizing a content-addressed object store with branches to track different states of filesystem trees. This facilitates deduplication through hardlinks, enabling multiple parallel-installable, read-only trees to coexist efficiently on disk without redundant storage. OSTree operates entirely in userspace, making it compatible with any standard filesystem such as , , or , and supports delivery of these trees over HTTP for straightforward network-based updates. Key objectives include preserving user-specific configurations in directories like /etc and /var during upgrades, while providing mechanisms for integration and optional layering of applications in separate locations such as /var or /home. By focusing on immutability and atomicity, OSTree aims to reduce the complexity of OS maintenance, supporting hybrid models where traditional package managers can layer additions onto the base tree for flexibility in diverse environments.

History

Origins

OSTree was initiated in October 2011 by Colin Walters, a software engineer who later became a principal engineer at , as a tool for managing versioned, bootable filesystem trees. The project was first publicly introduced by Walters at the GNOME Users And Developers European Conference (GUADEC) in , where it was presented as a system for building and deploying atomic operating system images inspired by Git's content-addressed object storage model. The origins of OSTree stem from challenges faced by developers working on core components, such as , , and gnome-shell, who needed efficient ways to test and iterate on operating system-level changes without disrupting their host environments. Walters designed it to enable chroot-based development with hard-linked, read-only filesystem trees, supporting and updates to address limitations in traditional package managers like RPM and , as well as tools. This approach targeted operating system developers and testers, including figures like Dan Williams and Eric Anholt, by providing a git-like versioning system for entire OS trees rather than individual files. Early motivations emphasized improving for , allowing automated daily builds from upstream repositories into bootable images. By 2013, OSTree had been integrated into GNOME's pipeline, running on dedicated 32-core hardware to produce and test immutable OS variants, marking its shift from a prototyping tool to a foundational system for reliable OS deployment.

Development Milestones

OSTree's development, initiated in 2011, gained public momentum in 2012 through the GNOME Continuous project aimed at enabling high-performance and testing for software. This effort addressed challenges in OS-level experimentation, such as safe upgrades and rollback without disrupting the host system, drawing inspiration from tools like and Chromium OS's autoupdater. The project's first public release, version 2013.6, arrived in August 2013, introducing core functionality for atomic upgrades of filesystem trees using a Git-like content-addressed model. Early versions focused on parallel installations and integration, with subsequent releases like v2014.1 in January 2014 enhancing repository management and documentation. By 2014, Endless OS became the first production operating system to adopt OSTree from its launch, leveraging it for immutable updates in its Debian-based distribution targeted at education and emerging markets. In 2015, the rpm-ostree extension was proposed as a change, bridging OSTree with RPM packaging to enable hybrid image-based and layered updates for container-focused systems like Project Atomic. This marked a significant milestone in mainstream adoption, with rpm-ostree's v2017.7 release in July 2017 adding features like improved transaction handling and integration with tools such as libhif. OSTree's role expanded in application distribution with the 2016 renaming and release of (previously xdg-app), which uses OSTree repositories for sandboxed app deployment across Linux desktops. In 2018, introduced Silverblue (now part of Workstation variants) in Fedora 28, using OSTree for immutable desktop images with bi-weekly updates and rollback capabilities. Subsequent years saw broader ecosystem integration, including support for embedded systems and adoption in for Edge images. In 2023, Colin Walters introduced bootc, a new project extending OSTree concepts for bootable container images, influencing future integrations in Atomic variants. Development continued with a shift to year-based versioning (e.g., v2018.1 onward), culminating in releases like v2025.6 in September 2025, which included enhancements for boot performance and verity checksum optimizations. As of 2025, OSTree underpins immutable distributions like CoreOS, IoT, and Torizon OS, emphasizing security through GPG signatures and delta updates.

Architecture

Content-Addressed Storage

OSTree employs a content-addressed storage model, inspired by , where all data objects are uniquely identified and stored based on their SHA256 checksums rather than file paths or names. This approach enables efficient deduplication, as identical files across different versions or deployments share the same storage object via hardlinks, minimizing disk usage during upgrades or multiple installations. The repository structure is organized into an objects directory containing these deduplicated blobs, metadata, and trees, typically located at /ostree/repo/objects, with loose objects for recent additions and packfiles for optimized long-term . At the core of this model are several object types that represent the . Commit objects serve as markers, encapsulating such as timestamps, subject lines, and references to commits, while pointing to the dirtree and dirmeta objects that define the entire filesystem tree. These commits are addressed by the SHA256 hash of their serialized and stored as .commit files. Dirtree objects represent directory structures as sorted arrays of filename-to-checksum mappings, distinguishing between regular files ( objects) and subdirectories (nested dirtrees), and are serialized as .dirtree files. Complementing them, dirmeta objects store directory-specific , including permissions and ownership, in .dirmeta format, separating this from the structural tree to avoid redundancy in extended attributes. objects, the leaves of the tree, encapsulate individual files with their metadata (, gid, , symlink targets) and gzipped , addressed by the SHA256 of this combined and stored as .file or .filez files without timestamps to ensure immutability. Additionally, in modes like bare-split-xattrs, extended attributes are handled via dedicated xattrs objects (file-xattrs) encoded as GVariants, further enabling precise addressing. This content-addressed design facilitates atomic operations, as entire trees can be referenced immutably by a single commit , allowing deployments to hardlink into the shared object store for space-efficient rollbacks and upgrades that only materialize changes proportional to modified files. For example, when committing a new filesystem tree via ostree commit, OSTree recursively hashes files and directories, writing only novel objects to the store.

Deployment Model

OSTree's deployment model centers on managing multiple, bootable, versioned filesystem trees stored in a content-addressed , enabling updates and rollbacks for operating systems. Deployments are organized under a "stateroot" (also known as "osname"), which groups related installations sharing a common /var directory at /ostree/deploy/$stateroot/var. For instance, a stateroot like "" or "rhel" allows multiple deployments within /ostree/deploy/$stateroot/deploy/$checksum, where each $checksum corresponds to a SHA256 of a specific commit from the OSTree at /ostree/repo. This structure ensures that the core OS content, primarily in /usr, is read-only and deduplicated via hardlinks across deployments, minimizing storage overhead during upgrades. The boot process integrates with the Boot Loader Specification, where OSTree generates configuration entries in /boot/loader/entries/ for each active deployment, such as ostree-$stateroot-$checksum.$serial.conf. These entries include kernel parameters like ostree=/ostree/deploy/$stateroot/deploy/$checksum to mount the selected deployment as the root filesystem (/sysroot) during initramfs execution. A writable overlay for /etc is applied at boot time by merging changes from /usr/etc (immutable) with user modifications in /etc, preserving configuration across updates. The bootloader maintains an ordered list of deployments, with the first entry as the default boot target, facilitating seamless rollback to prior versions if needed. Management of deployments emphasizes atomicity and safety. Upgrades are staged using commands like ostree admin upgrade --stage, creating a pending deployment that is finalized atomically via a service (ostree-finalize-staged.service), ensuring the system either fully transitions to the new or reverts without partial states. This model supports parallel installations, allowing multiple OS versions to coexist, and differs from traditional package managers by treating the entire /usr as an immutable unit rather than updating individual files. Rollbacks are achieved by simply reordering the deployment list with ostree admin status or ostree admin deploy, promoting reliability in production environments.

Features

Atomicity and Rollback

OSTree implements updates by treating the entire operating system filesystem as an immutable, versioned tree, ensuring that upgrades either fully succeed or leave the system unchanged. When applying an update, OSTree downloads or computes a new filesystem tree, validates it using SHA256 checksums, and stages it as a separate deployment alongside the existing one. This process uses hard links for efficient storage, minimizing disk writes, and only activates the new deployment upon successful reboot via bootloader configuration, such as entries. If a failure occurs during the update—such as a power loss or crash—the system boots from the prior deployment, guaranteeing consistency without partial states. The atomicity model leverages OSTree's content-addressed object store, where each file and directory is deduplicated and referenced by its , enabling safe transitions between deployments. For instance, in rpm-ostree-based systems like Silverblue, the rpm-ostree [upgrade](/page/Upgrade) command fetches updates from a remote , performs a three-way merge for user-modified files in /etc, and prepares a new entry without altering the running system. This deployment strategy supports partitioning patterns, where alternate directories (e.g., /ostree/boot.0 and /ostree/boot.1) facilitate swapping, ensuring the booted version remains accessible even after garbage collection of unused trees. Rollback in OSTree is facilitated by retaining multiple deployments, allowing reversion to a previous version with minimal effort. The rpm-ostree rollback command deploys the immediately prior version as the default boot target, while users can select older ones temporarily via the GRUB menu or permanently by specifying a commit hash (e.g., rpm-ostree deploy <checksum>). This preserves user data in /home and layered packages like Flatpaks, as the base OS tree is immutable. By default, systems retain at least one rollback option, with options to pin specific deployments (e.g., ostree admin pin 0) to prevent automatic cleanup. Rollbacks are particularly valuable in production environments, enabling quick recovery from faulty updates without reinstallation. These features provide significant reliability benefits, reducing downtime in and deployments by avoiding the risks of traditional package managers that can leave systems in inconsistent states. For example, in scenarios, atomicity ensures devices remain operational post-update failure, while supports rapid iteration in development workflows. OSTree's design draws from Git's branching model but optimizes for bootable trees, achieving efficient space usage through shared objects across versions.

Security and Replication

OSTree incorporates several security mechanisms centered on immutability and cryptographic verification to protect against tampering and unauthorized modifications. The system's content-addressed object store uses SHA256 checksums for all files and , ensuring that any alteration to content would result in a mismatched hash, thereby preventing undetected corruption or injection of malicious data. Deployments are designed as read-only filesystem trees, with the /usr directory mounted read-only via bind mounts, which isolates the core operating system from runtime changes and enhances resistance to exploits targeting mutable filesystems. Additionally, OSTree supports GPG signatures on commits and references, allowing administrators to verify the authenticity of updates from trusted sources before deployment. Verification processes in OSTree are integrated into key operations to maintain trust. When pulling content from a remote , the ostree automatically checks GPG signatures against a configured keyring, rejecting unsigned or invalidly signed to block deployment of unverified trees. This per-remote GPG verification, combined with options for custom keyrings or key paths, enables fine-grained control over trusted publishers, such as operating system vendors. For deployments, the nature of updates—where changes are staged in a separate bootable root before activation—allows rollback to a known-good state if verification fails post-pull, further mitigating risks from compromised updates. Replication in OSTree facilitates secure distribution of filesystem trees through an incremental, HTTP-based model that leverages its primitives. Clients can add remotes via ostree remote-add and pull updates using ostree pull, downloading only new objects identified by their checksums, which reduces and exposure to transfer errors. This process mandates GPG verification of pulled metadata and supports "pinned TLS" for connections, where specific certificates are enforced to prevent man-in-the-middle attacks during replication. As of 2024, OSTree serves as the underlying storage for bootc, enabling these features in container-native workflows by unpacking OCI images into the object . In practice, this enables efficient mirroring of repositories across distributed systems, as seen in rpm-ostree integrations where vendors like provide signed base images for client replication, ensuring end-to-end integrity from build server to endpoint.

Usage

Command-Line Tools

OSTree provides a suite of command-line tools for managing repositories, commits, deployments, and related operations, primarily through the ostree executable with various subcommands. These tools enable users to initialize repositories, create and manipulate versioned filesystem trees, pull and push content from remotes, and handle system deployments atomically. The repository location defaults to the current directory, the OSTREE_REPO environment variable, or /sysroot/ostree/repo in deployed systems. The ostree admin subcommand focuses on system-level administration, particularly for managing deployments in a booted OSTree-based operating system. Key operations include ostree admin init-fs, which initializes the root filesystem structure for deployment; ostree admin status, which lists current deployments and their checksums; and ostree admin deploy, which sets up a specific commit for the next boot by creating a deployment subdirectory under /ostree/deploy. Other notable commands are ostree admin upgrade for downloading and deploying the latest version from a remote, ostree admin switch for changing the tracked branch without altering the remote, and ostree admin undeploy for removing a deployment to free up space. These ensure atomic updates and rollback capabilities during system management. For repository and filesystem operations, core subcommands handle content addressing and versioning akin to Git. The ostree init command initializes a bare repository with the necessary object directories for storing checksum-addressed files. ostree commit creates a new versioned tree from an existing directory or previous commit, generating a unique SHA256 checksum for the root object. Users can inspect trees with ostree ls to list directory contents, ostree diff to compare changes between commits, and ostree log to view revision history. Data transfer is managed via ostree pull for downloading from HTTP or HTTPS remotes, supporting partial fetches and delta compression, and tools such as ostree-push for uploading commits to remote repositories over SSH. Maintenance tasks include ostree prune to garbage-collect unreachable objects and ostree fsck for verifying repository integrity. Additional utilities support integration and debugging. For instance, ostree remote manages remote configurations, including adding mirrors with ostree remote add, while ostree refs lists all branches and tags in the . The ostree checkout command extracts a commit to a writable directory for modification, and ostree summary generates metadata files for efficient remote pulls. In deployed environments, tools like ostree admin cleanup remove untagged deployments and objects to reclaim disk space. These commands collectively facilitate OSTree's model of immutable, content-addressed storage while allowing flexible workflow customization.

Integration with Build Systems

OSTree integrates with various build systems by serving as a content-addressed layer that ingests filesystem trees or balls generated during the , enabling , versioned deployments of operating systems and applications. Build systems produce artifacts such as structures or archives, which OSTree then commits into repositories using commands like ostree commit --tree=dir=/path/to/build/output for directories or ostree commit --tree=tar=build.tar for tarballs. This workflow supports efficient through hardlinks and unions, reducing duplication and allowing incremental updates via binary deltas. In RPM-based distributions, rpm-ostree exemplifies this integration by layering RPM packages onto an immutable base OSTree commit, composing a new filesystem tree that is then committed to the . The process involves building RPMs externally and using OSTree to manage the resulting deployment, with support for GPG signing and configuration. This enables online updates without disrupting the running system, as seen in variants like Silverblue. For container and application packaging, leverages OSTree as its core storage mechanism, treating applications as branches in OSTree repositories. During builds, Flatpak runtime environments and app bundles are committed directly into OSTree, utilizing hardlinks for efficient on-disk representation and content-addressed objects to deduplicate files across installations. This allows seamless updates and rollbacks, with repositories manipulable via the ostree command-line tool. Embedded Linux build systems like the integrate OSTree through layers such as meta-updater, which facilitates the creation of OSTree-compatible images from Yocto-generated sysroots. The workflow deploys the built filesystem as an OSTree commit, supporting atomic updates for devices, and includes tools for generating bootable images from the repository. This is particularly useful for and automotive applications requiring reliable over-the-air updates. General-purpose build tools like BuildStream use OSTree's C API to compose and commit filesystem trees, enabling agnostic integration across different build pipelines. Artifacts are imported into OSTree repositories for sharing via hardlinks, supporting immutable deployments without built-in dependency management. Similarly, incorporates OSTree-like features for managing multiple bootable roots with checksum-based paths and deduplication. In enterprise environments, Red Hat's osbuild-composer tool builds OSTree images for RHEL for by defining blueprints and composing commits from or tar sources, which are then pulled into local repositories. This supports centralized and efficient distribution to edge devices, emphasizing for large-scale deployments. Oracle Linux integrates OSTree for building immutable images, supporting efficient and secure updates in cloud environments as of October 2025.

Deployments

In Operating Systems

OSTree has been adopted in several Linux-based operating systems to enable atomic, immutable updates and versioned deployments of the entire filesystem tree, reducing the risk of partial updates and facilitating rollbacks. This approach treats the operating system as a series of immutable images, similar to or commits, allowing for efficient through deduplication and delta-based transfers. In these deployments, OSTree manages the core system while user modifications are handled via layered packages, , or separate writable partitions like /var. One prominent example is , an immutable variant of the distribution, where OSTree serves as the foundational technology for composing, deploying, and updating the base system. Users interact with it through rpm-ostree, which layers RPM packages atop the immutable core, ensuring atomic transactions and easy reversion to previous versions via entries. This model enhances reliability for desktop environments by isolating the base OS from application changes, often complemented by tools like for containerized development workflows. Fedora CoreOS, designed for containerized and cloud-native workloads, similarly leverages OSTree to manage multiple bootable trees, sharing storage across versions for efficiency. It supports extensions via rpm-ostree layering, enabling customization without altering the immutable base, and is optimized for automated provisioning in and scenarios. The system maintains at least two deployments by default, allowing seamless rollbacks if an update fails. In enterprise contexts, (RHEL) for Edge images utilize OSTree to create and manage bootable filesystem trees as commits in a Git-like . As of RHEL 9, Image Builder tools generate OSTree-based or images, which rpm-ostree deploys on edge devices with upgrades and static deltas for bandwidth-efficient updates. Starting with RHEL 10 (2025), bootc replaces rpm-ostree for new images, enabling OCI-based deployments while retaining OSTree's , rollbacks, and delta efficiency; it supports centralized management through mirrors and registries for secure, scalable over-the-air updates in disconnected environments. Oracle Linux employs OSTree for immutable OS images, particularly in cloud and container host scenarios, where it indexes full filesystem trees for atomic updates that either complete fully or revert to a prior state. This is integrated into Oracle Container Host for Kubernetes (OCK), an OSTree-based distribution tailored for Kubernetes workloads, providing versioned, secure base systems with efficient delta downloads. Endless OS, a Debian-derived distribution aimed at education and emerging markets, uses OSTree to maintain a read-only root filesystem, delivering non-destructive atomic updates that preserve user data. Combined with for applications, it ensures the base OS remains immutable, with OSTree handling versioning and deployment to support offline and low-bandwidth scenarios. For embedded systems, Torizon OS integrates OSTree as its core update mechanism, managing bootable trees alongside a runtime for containerized applications. Updates are delivered via OSTree commits using tools like Aktualizr, enabling over-the-air () deployments with deduplication and rollback capabilities optimized for industrial devices.

In Other Projects

OSTree, through its libostree library, has been integrated into several open-source projects beyond traditional operating system distributions, enabling efficient management of immutable, versioned artifacts such as applications, build pipelines, and embedded firmware updates. One prominent example is , a universal package management system for desktop applications. Flatpak leverages libostree to store and distribute application bundles and runtimes in a content-addressable repository, allowing for isolated, atomic deployments that share common files across installations to minimize storage usage. This integration enables Flatpak to treat applications as OSTree commits, supporting features like remote repositories and updates for efficient downloads. In and testing workflows, Continuous employs OSTree as the foundation for a high-performance build system. It uses OSTree to create and distribute snapshots of GNOME modules on every commit, facilitating incremental rebuilds and by versioning entire filesystem trees of build artifacts. This approach originated the development of OSTree itself, providing developers with precise, git-like tracking of changes across hundreds of repositories. For embedded and applications, the Open Source Edition ( OSE) incorporates libostree for Firmware-Over-the-Air (FOTA) updates. Starting from version 2.0.0, OSE builds root filesystems into OSTree repositories during image creation, enabling devices to pull and deploy specific revisions atomically without full reflashing. This supports multiple sysroots for seamless version switching, using hardlinks to store only incremental changes and integrating with bootloaders like U-Boot for reliable updates on platforms such as . Additionally, projects like TorizonCore Builder utilize OSTree abstractions to simplify customization of embedded images for industrial applications. This tool allows developers to layer modifications onto OSTree-based base systems, generating deployable artifacts while preserving atomicity and rollback capabilities.

References

  1. [1]
    OSTree Overview | ostreedev/ostree
    OSTree is an upgrade system for Linux-based operating systems that performs atomic upgrades of complete filesystem trees.Missing: official | Show results with:official
  2. [2]
    libostree | ostreedev/ostree
    libostree is both a shared library and suite of command line tools that combines a “git-like” model for committing and downloading bootable filesystem trees.OSTree Overview · Anatomy of an OSTree repository · OSTree data formatsMissing: official | Show results with:official
  3. [3]
    Immutable system images with OSTree - CentOS Documentation
    Despite officially being named Libostree, the project is best known as OSTree. Similar to git or container images, OSTree relies on a content-addressed ...
  4. [4]
    Technical Information - Fedora Docs
    ostree is the core technology that is used to compose, deploy and update Fedora Silverblue. ostree operates in a similar manner to a version control system, ...
  5. [5]
    Projects/OSTree/Overview - GNOME Wiki
    Oct 23, 2024 · OSTree is a set tools which allow to manage multiple entire file system trees and store them efficiently. The main goals are: Storing multiple, ...
  6. [6]
    The ostree Open Source Project on Open Hub
    starting with its first commit in October, 2011 ending with its most recent ... Colin Walters · Alexander Larsson · Micah Abbott ...nne Champetier · ckyrouac ...<|control11|><|separator|>
  7. [7]
    OSTree for Fedora - LWN.net
    Jan 23, 2014 · Rather than break things up into packages, OSTree builds fully assembled, versioned filesystem trees that hold what would have gone into a set ...<|control11|><|separator|>
  8. [8]
    My impressions from GUADEC - Martin Pitt
    Colin Walters gave an introduction to OSTree, a project to build bootable images from kernel/plumbing/desktop upstream git heads on a daily basis. This is ...
  9. [9]
    Historical OSTree README
    Who is ostree for? First - operating system developers and testers. I specifically keep a few people in mind - Dan Williams and Eric Anholt, as well as myself ...Missing: creator | Show results with:creator
  10. [10]
    Tech - Kosmokaryote
    Aug 27, 2013 · Colin Walters on GNOME OSTree. GNOME OSTree is being actively used for continuous integration, on a 32-core, 48GBRAM machine. It's working ...
  11. [11]
  12. [12]
    ostree v2013.6 released - Colin Walters
    Aug 26, 2013 · But I think the most valuable contribution to Free Software I will have made will be my most recent project, OSTree. I've just released version ...
  13. [13]
    ostree v2014.1 - GNOME
    Jan 24, 2014 · ... OSTree version number. In case you haven't noticed, I believe version numbers are meaningless. They are an attempt by our software industry ...
  14. [14]
    The Endless - Vision
    We were the first OS to adopt OSTree in production from the very start of Endless OS in 2014, and help to prove and mature it alongside the community. Since our ...
  15. [15]
    Changes/RpmOstree - Fedora Project Wiki
    Jan 8, 2015 · The rpm-ostree tool provides a new way to deploy and manage RPM-based operating systems. Instead of performing a package-by-package install and upgrade on each ...
  16. [16]
    Flatpak – a history – Alexander Larsson - GNOME Blogs
    Jun 20, 2018 · Flatpak's early ideas came from 2007, with the first version (xdg-app) in 2014, and renamed to Flatpak in 2016.
  17. [17]
    What is Silverblue? - Fedora Magazine
    Jul 12, 2019 · A new release comes every 6 months and is supported for 13 months. The team plans to release updates for the OS bi-weekly (or longer) instead of ...
  18. [18]
    System Update - Yocto Project
    Jul 29, 2025 · OSTree is under active development and has an open-source community around it. OE/Yocto integration: Meta-ostree layer is work in progress.
  19. [19]
    OSTree | Toradex Developer Center
    Oct 22, 2025 · Introduction​. OSTree is a library, technically called libostree, that manages multiple bootable filesystem trees within a single partition.Missing: origins history creator
  20. [20]
    Anatomy of an OSTree repository
    It is designed to store a history of your binary builds, just like git stores a history of source control. However, OSTree also makes it easy to delete data ...Missing: milestones | Show results with:milestones
  21. [21]
    Deployments | ostreedev/ostree
    A layer that knows how to deploy, parallel install, and manage Unix-like operating systems (accessible via ostree admin).Overview. “ · stateroot” (AKA “osname... · Contents of a deployment
  22. [22]
  23. [23]
    Atomic Upgrades | ostreedev/ostree
    OSTree is designed to implement fully atomic and safe upgrades; more generally, atomic transitions between lists of bootable deployments.<|control11|><|separator|>
  24. [24]
    Updates, Upgrades & Rollbacks - Fedora Docs
    Installing updates with Fedora Silverblue is easy and fast. It also has a special rollback feature, in case anything goes wrong.
  25. [25]
    Chapter 11. Creating and managing OSTree image updates | 8
    OSTree is a technology that enables you to create commits and download bootable file system trees. You can also use it to deploy the trees and manage the boot ...Missing: overview | Show results with:overview
  26. [26]
    Updates and Rollbacks - Fedora Docs
    The rpm-ostree command is used to manage the atomic system tree used by the Fedora IoT images. The update command is an alias for the upgrade command.
  27. [27]
    ostree.repo-config
    OSTree supports a per-remote GPG keyring, as well as a gpgkeypath option. For more information see ostree(1). in the section GPG verification . Per-remote HTTP ...
  28. [28]
    A true hybrid image/package system | rpm-ostree - CoreOS
    rpm-ostree is a hybrid image/package system. It combines libostree as a base image format, and accepts RPM on both the client and server side, sharing code ...
  29. [29]
    ostree {COMMAND} [OPTIONS...]
    OSTree is a tool for managing multiple bootable versioned filesystem trees, or just "tree" for short. In the OSTree model, operating systems no longer live in ...
  30. [30]
    Writing a buildsystem and managing repositories - OSTree Project
    It is a tool for transporting and managing content, along with package-system independent aspects like bootloader management for updates.
  31. [31]
  32. [32]
    Under the Hood - Flatpak documentation
    Flatpak uses OSTree, similar to Git, to track binary files. It stores apps as branches in local repositories, and uses hard links for efficient access.Missing: history | Show results with:history
  33. [33]
    uptane/meta-updater - GitHub
    the default client for HERE OTA Connect. OSTree is a tool for ...
  34. [34]
    Related Projects | ostreedev/ostree
    OSTree is in many ways very evolutionary. It builds on concepts and ideas introduced from many different projects such as Systemd Stateless, Systemd Bootloader ...Missing: official | Show results with:official
  35. [35]
    Chapter 16. Creating and managing OSTree image updates | 9
    You can easily create and manage OStree image updates for your RHEL for Edge systems and make them immediately available to RHEL for Edge devices.
  36. [36]
    Configuring Storage - Fedora Docs
    Fedora CoreOS uses OSTree, which is a system for managing multiple bootable operating system trees that share storage. Each operating system version is part ...
  37. [37]
    Immutable Images for Oracle Linux with OSTree
    Oct 21, 2025 · OSTree is a mechanism for indexing and providing full OS images, and is sometimes described as “git for your filesystem”. All OSTree commits are ...Missing: overview | Show results with:overview
  38. [38]
    Technical introduction - Support & Training | Endless Access
    Endless OS is a Debian-based Linux using OSTree and Flatpak, with a read-only root file system, and is designed to be immutable.Missing: adoption | Show results with:adoption
  39. [39]
    OSTree | Toradex Developer Center
    Oct 22, 2025 · OSTree is a library, technically called libostree, that manages multiple bootable filesystem trees within a single partition.
  40. [40]
    Firmware-Over-the-Air Setup | webOS Open Source Edition
    libostree is an upgrade system for Linux-based operating systems, which performs atomic upgrades of complete filesystem trees. The underlying architecture might ...
  41. [41]