On Mon, Apr 19, 2021 at 10:33 AM Matthew Miller
<[email protected]> wrote:
>
> On Sun, Apr 18, 2021 at 08:24:57AM +0200, Andreas Hartmann wrote:
> > Currently I'm looking for guidance on how to create Remixes. I have
> > read through the Anaconda docs and searched the wiki already. So far I
> > can tell that Anaconda works based on images that it installs to a
> > host. Now I wonder how to create the images, because the Wiki mentions
> > a plethora of tools for the job: livecd-tools, pungi, livemedia-creator
> > and lorax. I also found a lot of mentions of kickstart everywhere...
>
> The new hotness is OSBuild -- called "Image Builder" in RHEL. See
> https://www.osbuild.org/documentation/.
>
> That said, it's so new I'm not sure that we have examples of using it for
> this use case. So there may be some things that we need to improve so that
> Remixes can be easily used. I'd be happy to make sure any such issues come
> to the attention of the team that works on it.
>

It is currently not technically possible to do the things required for
building a remix using OSBuild. You will need to use either lorax[1],
imagefactory[2], or appliance-tools[3].

The easiest of the three to use is appliance-tools, but the official
Fedora images are built using imagefactory.

[1]: https://weldr.io/lorax/
[2]: https://imgfac.org/
[3]: https://pagure.io/appliance-tools

>
> > Could someone kindly recommend which of these tools to further look
> > into? Or is there something like an example step-by-step guide that I
> > can follow to get a grasp of how to create the images or even a whole
> > Remix (possibly including how to fulfill legal requirements around
> > fedora-logos etc.)?
>
> You'll want to replace fedora-logos with generic-logos, and fedora-release
> with generic-release. We've tried to concentrate the legal requirements in
> these packages to make it easy for you.
>

There are four branding packages:

* fedora-release
* fedora-logos
* fedora-bookmarks
* fedora-repos

Of those four, two are mandatory to replace in a remix case:

* fedora-release
* fedora-logos

When making a full derivative, you need to replace *at least* these three:

* fedora-release
* fedora-logos
* fedora-bookmarks

If you want your derivative to not use the Fedora mirror network for
Fedora packages, you'll want to replace fedora-repos too.

Fedora's images are composed using kickstarts, of which all of them
are present here: https://pagure.io/fedora-kickstarts

(Ignore the spin-kickstarts package, it hasn't been updated in years
and is basically broken)

If you're using imagefactory or lorax, you'll want to look at the
fedora-disk-* kickstart files as examples.

If you're using appliance-tools, you'll want to look at the
fedora-arm-* kickstart files as examples, but those are present only
in the f33 branch: https://pagure.io/fedora-kickstarts/tree/f33

I primarily work with appliance-tools, so for that one, the steps more
or less go like this:

Prep steps (only need to be done the first time):

> sudo dnf install pykickstart mock
> sudo usermod -a -G mock $USER
> newgrp mock

Image creation steps (should be done each time):

> git clone --branch f33 https://pagure.io/fedora-kickstarts
> ksflatten -v, --config fedora-arm-workstation.ks -o ./flat-f33-workstation.ks 
> --version f33
> mock --root fedora-33-armhfp --install appliance-tools
> mock --root fedora-33-armhfp --copyin ./flat-f33-workstation.ks /
> mock --root fedora-33-armhfp --isolation=simple --chroot 
> "/usr/bin/appliance-creator -c /flat-f33-workstation.ks -d -v --logfile 
> appliance.log --cache /tmp/koji-appliance -o /app-output --format raw --name 
> Fedora-Workstation-armhfp-33 --version 33 --release 1"
> mock --root fedora-33-armhfp --copyout /app-output/Fedora-Workstation-* .

Someone else more familiar with creating disk images with the other
tools can probably help with those. Unfortunately, I've never had any
real success myself with the others. :(


-- 
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
remixes mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to