# Atomic Host
Atomic Host is a lightweight, immutable platform, designed with
the sole purpose of running containerized applications.
## The `atomic` module
The atomic module defines the package set required for
running a fully featured, module-based Atomic Host. Unlike
Host & Platform, the module is not split into userspace and
hardware-enabling parts. Instead, it's a well integrated, faster
moving module capable of booting on various configurations,
running as an OSTree image and managing containerized
applications.
`atomic` builds against `bootstrap` & `shim` and requires `shim`
at runtime.
Only one stream with rolling updates will be supported. Since no
other modules build against `atomic`, the module technically
doesn't need a stable API. The `platform` module will provide
the base container image for applications (modules) running on
top of Atomic Host.
### Initial development
The initial proof-of-concept module was put together using the *Host &
Platform* tools:
* [Host & Platform content definition](https://github.com/fedora-modularity/hp)
* [Package lists & module generators](https://github.com/fedora-modularity/baseruntime-package-lists)
The content definition lists packages that define Atomic
Host, along with SRPM and architecture availability hints.
This user-curated input is then passed to the package lists &
module generators that resolve dependencies using a Host &
Platform development Rawhide snapshot repodata. The resolved
per-architecture package lists are then merged, the matching
dist-git commits found and the modulemd file included in this
repo is generated.
To fetch the latest modulemd file, simply invoke `make update`
in this repository.
### Long-term plans
*To be done.*