UML Builder Logo
Home Page/News
Walkthrough
Features
Screenshots
SourceForge
Download
Running it
Distributions
Known problems
Future plans
Thanks
Contacts
Help wanted

Documentation
Command line
GUI
FAQ
Developer - General
Developer - Profile
Security

Useful stuff
Making your own UML RPMs

UML Builder

Profile Documentation

A profile is the cornerstone of describing how a particular distribution is installed. You can find them in the /usr/lib/uml/umlbuilder/profiles/ directory.

The profile is Python code that is sourced by UML Builder. It should set a number of variables as described below. These variables are Python lists/tuples (delimited by square or round brackets [] () ) or dictionaries.

This table is still under construction

Key Format Description
modules mandatory, dictionary Each key will appear as an entry in the modules listing for the user to install. It should roughly correspond to the choices available when installing the distro normally.

The value is a list. The first item is a string describing the module and will be displayed to the user. The next item is a list of other modules that are implicitly included by selecting this one. For example, you may wish to ensure that if the 'Gnome' module is chosen, the 'Xapps' one is as well. The third and remaining items are the rpms to include. These are specified as the rpm basename (eg kdeadmin instead of kdeadmin-2.2.2-12mdk.i586.rpm, although you can specify the full name if you want.) UML Builder does a full dependency analysis and will also include all RPMs that the ones you list require.

It is quite frequent that rpms depend on each other. Eg package 'A' will require 'B' and 'B' will require 'A'. If UML Builder encounters this situation, and both packages are in the list, then they are ordered as in the list. This usually only matters if the pre- or post-install script in the RPM tries to use programs that are part of the other RPM.

Example:

modules={
    'minimum':
       ( 
         'Minimum installation',  # Description
         (),                      # Include
         'setup', 'rpm', 'bash'   # packages
       ),

     'recommended':
       (
         'Recommended install',   # Description
         ('minimum',)             # Include
         'network', 'netscape'
       )
}
installrpms mandatory, list A list of RPMs needed during the install process. Dependency analysis is done. At the very least you will need rpms covering the following:
  • mount/umount
  • mkfs for each supported filesystem type
  • python
  • shellutils, fileutils, textutils, grep
  • rpm
  • tar
  • cpio

SourceForge Logo         Valid HTML 4.01!