Re: Building a multi-OS install ISO image?

Stefan Möding <[email protected]>
Newsgroups gmane.linux.debian.fai
Message-ID <[email protected]>
Thomas Lange <[email protected]> writes:

>     > Isn’t rinse already doing the heavy lifting in donwloading all specified
>     > packages?  Createrepo then creates the metadata for a directory full of
>     > existing RPMs:
> rinse does no resolve dependencies.

I’ve looked into this: there is a program "repotrack" (available as part
of the Debian yum-utils package).  This tool takes the name of a RPM
package on the commandline and will download the package and all
dependencies from a configured RPM repo into a given directory.  So we can
do this in a loop for all packages identified by install_packages.
Finally we call "createrepo" (from the Debian package of the same name) to
turn the RPM files into a valid yum repo.

Attached is proof of concept script "fai-mirror-rpm".  It expects a valid
repo configuration in /etc/yum.repos.d as used with RPM based
distributions.

Currently unsolved issues:

* for multiple operating systems we would need different repo configs in
  /etc/yum.repos.d and a way to tell repotrack the correct ones.  There is
  an option for that but the script currently does not handle this case.

* Yum has a concept of package groups (in my FAI scripts/hooks I do a "yum
  groupinstall core" or "yum groupinstall minimal-environment" to install
  the base system).  The repo created by "createrepo" can only create
  a groups-enabled repo by providing a file in XML format on the
  commandline.  Without this the repo has no data for yum to decide which
  packages belong to a group.  So this would have to be solved to be able
  to use package groups during the installation.

Maybe this can be a starting point if somebody wants to do more work on
the topic.



-- 
Stefan
fai-mirror-rpm.gz (application/octet-stream, 3.2 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.