rpm2html - make an html database from rpm repository
SYNOPSIS
rpm2html [-q][-v][-force][-lang langfile] config-file
DESCRIPTION
Rpm2html tries to solve 2 big problems one face when grab
bing a RPM package from a mirror on the net and trying to
install it:
- it gives more information than just the filename
before installing the package.
- it tries to solve the dependancy problem by analyzing
all the Provides and Requires of the set of RPMs. It
shows the cross references by the way of hypertext
links.
The second point will only be efficient if the actual number of
indexed RPMs is important.
Each configuration file is handled independantly as if it was a
new invocation of rpm2html.
A configuration file represents a list of directories and a
ditribution as a whole. All the references between packages
listed in the directories of a single config file are marked by
hyperlinks in the resulting HTML files. Here is the process lead
ing to the creation of the HTML pages:
1/ The configuration file is parsed, it sets all the default
values for rpm2html. Then all the directory entries are parsed
and a list of directories to scan is built.
2/ For each directory, the RPM are scanned, the HTML page
describing the package is generated immediately.All ressources
provided and needed by the RPM file are stored in a list of
ressources. A list of parsed RPMs is also constructed.
3/ Once all the RPM for this config file have been scanned all
ressources are dumped in ressources files with links to the RPM
providing them (one could also add the RPM needing them but
everything needs libc for example).
4/ The sorted lists of packages are generated by sorting the
RPM list for various criteria and general front-end pages are
generated unsing the new list order.
5/ The main page is generated with links to the various front-
end pages, statistics and description of the packages analyzed.
6/ All the lists are freed and global variables are reset.
CONFIGURATION
A configuration file a text file, lines beginning with
semicolumns are comments. The first part is a global sec
tion defining some important parameters of rpm2html.
Parameters are defined with the syntax:
variable=value
Values shouln't be quoted and end up with the end of line
The folowing variables are supported:
maint The maintainer of the local mirror, NEEDED !
mail The E-mail of the maintainer, NEEDED !
dir The directory for for the HTML output, NEEDED !
url The URL for the HTML files on the WWW server
host The hostname for the server.
After these variables, one section should be filled for each
directory on your system containing RPM files. It starts with
the directory filename between brackets:
[The name between brackets is the directory, NEEDED !]
The special directory name [localbase] extract informations from
the RPM base of installed software instead of listing a direc
tory. It allows to dump HTML pages for the installed RPM base on
a machine.
All the variables defined below until the next directory or the
end of file pertain to this directory. Here are the possible
variables:
name A significant name for this mirror, NEEDED !
ftp The original FTP/HTTP url, NEEDED !
ftpsrc Where the associated sources are stored
color Background color for pages
trust Unused yet
url The local FTP/HTTP url.
ror=value lines withing the section. The first one will be con
sidered the local one.
EXAMPLE
Example of configuration files:
;
; Sample configuration file for rpm2html
;
maint=Joe
mail=joe@mydistrib.org
dir=/home/http/html/MyDistrib
url=/Mydistrib
tree=true
rdf=true
rdf_dir=/home/ftp/pub/mydistrib/RDF
[/MyDistrib/RPM/noarch]
name=Arch independant packages for MyDistrib
ftp=ftp://ftp.mydistrib.org/pub/mydistrib/noarch
subdir=noarch
[/MyDistrib/RPM/i386]
name=i386 packages for MyDistrib
ftp=ftp://ftp.mydistrib.org/pub/mydistrib/i386
ftpsrc=ftp://ftp.mydistrib.org/pub/mydistrib/srcs
color=#e0ffff
subdir=i386
mirror=ftp://ftp.mydistrib.org/pub/mydistrib/i386
mirror=ftp://ftp.elsewhere.org/pub/mydistrib/i386
[/MyDistrib/RPM/alpha]
name=Alpha packages for MyDistrib
ftp=ftp://ftp.mydistrib.org/pub/mydistrib/alpha
ftpsrc=ftp://ftp.mydistrib.org/pub/mydistrib/srcs
color=#ffe0ff
subdir=alpha
mirror=ftp://ftp.mydistrib.org/pub/mydistrib/alpha
mirror=ftp://ftp.elsewhere.org/pub/mydistrib/alpha
[/MyDistrib/RPM/sparc]
name=Sparc packages for MyDistrib
ftp=ftp://ftp.mydistrib.org/pub/mydistrib/sparc
ftpsrc=ftp://ftp.mydistrib.org/pub/mydistrib/srcs
color=#ffffe0
[/MyDistrib/RPM/ppc]
name=PPC packages for MyDistrib
ftp=ftp://ftp.mydistrib.org/pub/mydistrib/ppc
ftpsrc=ftp://ftp.mydistrib.org/pub/mydistrib/srcs
color=#e0ffe0
subdir=ppc
mirror=ftp://ftp.mydistrib.org/pub/mydistrib/ppc
mirror=ftp://ftp.pear.com/pub/mydistrib/ppc
OPERANDS
The following operands are supported:
files
List of configuration files
EXIT STATUS
The following exit values are returned:
0 Successful completion.
>0 An error occurred.
SEE ALSO
rpm(1),
Man(1) output converted with
man2html