Commit Graph

11 Commits

Author SHA1 Message Date
Liora Milbaum 6fe2272322 Squash sagano identifier 2023-11-07 09:05:21 +02:00
Colin Walters 05f8c0f10c Add bootc to eln
To do this though add a `distro` variable we can use to differentiate
between stream9 vs not-stream9 for now.

bootc exists now in eln since
- https://pagure.io/pungi-fedora/pull-request/1217
- https://github.com/minimization/content-resolver-input/pull/1006
2023-11-01 15:20:20 -04:00
Colin Walters 2ea1dcabc2 Enable readonly sysroot via config file
This is the more proper way to do it.
2023-10-21 16:03:18 -04:00
Colin Walters f84eba9267 bootc: Move install configuration here
Prep for dropping it out of upstream.
2023-10-14 14:46:38 -04:00
Colin Walters 43d8ee09de tier-0: Add container-selinux
Because currently trying to layer it on later causes issues.
2023-10-02 09:07:11 -04:00
Colin Walters 925d2a89cf Move container entrypoint to tier 0 2023-09-28 16:29:56 -04:00
Colin Walters 9dae26959c initramfs: Also add kernel-modules
Not sure why these basic things are being dropped.
2023-09-21 20:00:17 -04:00
Colin Walters 1f673cb118 Add bootc proper package to -dev
Because the rpm-ostree bootc wrapping breaks `bootc install`
2023-09-21 18:40:50 -04:00
Colin Walters 6a19fc44a9 initramfs: Enable more dracut modules
These get pulled in by something else it seems in larger
images...
2023-09-21 18:18:40 -04:00
Colin Walters 29f6c6fcd2 manifests: Split out firmware, do use bootable-rpm-ostree 2023-09-15 17:30:44 -04:00
Colin Walters 7361f26eeb Introduce a tier-0 image
This is basically just:

- kernel
- systemd
- selinux-policy-targeted
- bootc

Notably it doesn't have `rpm-ostree` or `rpm`, or many other things.
It also doesn't even have `linux-firmware`.

And no `openssh`!

It's almost certain that you need to derive from this, but
it should be a suitable starting point.

TODO: Add something like

```
$ dnf-system-bootstrap
Installing packaging tools from quay.io/fedora/fedora-boot-dnf@sha256:abcd...)
 # This would be basically all the packages not in tier-0 that
 # are enough to give `dnf install`
$ dnf install cowsay
 # Install critical stuff
$ dnf system-bootstrap remove
 # Remove everything that we added for the package system, that isn't
 # a dependency of what the user wants!
```

(In theory we could make this work with multi-stage builds, but
 it's a little hard)
2023-09-15 15:11:01 -04:00