{"adoption": {"forks": 364, "observed_at": "2026-08-28T04:05:19.949509+00:00", "stars": 1669}, "canonical_url": "https://ross.abutalabs.com/products/ostree", "card": {"archived": false, "artifact_type": "library", "description": "Operating system and container binary deployment and upgrades", "domain": ["operating-systems", "infrastructure-as-code", "developer-tools"], "enriched": true, "function": ["package-manager", "deployment", "version-control", "cli", "developer-tools"], "health_score": 100, "homepage": "https://ostreedev.github.io/ostree/", "language": "C", "license": "NOASSERTION", "license_family": "other", "maturity": "stable", "member_repos": ["ostreedev/ostree"], "name": "ostreedev/ostree", "platform": ["cli", "cross-platform"], "pushed_at": "2026-08-25T14:18:35+00:00", "repo": "ostreedev/ostree", "stars": 1669, "tags": ["ostree", "immutable-os", "transactional-upgrades", "content-addressed-storage", "bootable-filesystem-trees", "rollback", "flatpak", "system-updates", "devops", "containers", "linux"], "topics": ["package-manager", "ostree"], "urls": [], "use_cases": ["deploy atomic OS image upgrades with rollback", "build an immutable Linux distribution", "manage bootable filesystem trees like git commits", "serve OS updates incrementally over HTTP with GPG signatures", "distribute container images and application runtimes like Flatpak", "keep multiple bootable roots installed in parallel", "track binary history of system deployments"], "what_it_is": "libostree (formerly OSTree) is a shared library and suite of command line tools that combines a git-like model for committing and downloading bootable filesystem trees with a layer for deploying them and managing bootloader configuration. It provides transactional upgrades and rollback for operating systems and is used by Fedora CoreOS, Fedora Atomic Desktops, Endless OS, and Flatpak.", "when_to_avoid": ["you just need conventional package management on a mutable system", "you need to deploy non-Linux operating systems", "you want simple container image tooling without OS-level deployment", "you need a pure userspace package manager for individual applications"], "when_to_choose": ["you are building an immutable or image-based Linux OS", "you need transactional system upgrades with automatic rollback", "you want content-addressed, deduplicated distribution of bootable filesystem trees", "you are building a tool like Flatpak or rpm-ostree that needs an ostree backend"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ostree", "repo": "ostreedev/ostree", "role": "main", "score": 95}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:19.949509+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:42:47.319018+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "81ef262164cd6d7e6058cb7c9b7fc171e994746904fb75113c6654262c4e7d6f", "fetched_at": "2026-08-28T04:05:19.949509+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ostreedev/ostree"}, {"content_hash": "55e1beed59fa63cc9fc0aab33e980c35e84d84fdacb2f1bfd211cce7d784e601", "fetched_at": "2026-08-29T11:16:01.125087+00:00", "kind": "homepage", "missing": false, "url": "https://ostreedev.github.io/ostree/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 86}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5197, "days_push": 8, "days_rel": 14, "gap_med": 44, "n_releases_24m": 14}, "score": 95, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}