1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209
|
.\" @(#)Rpm2html-0.70
.\" Copyright 1998 Daniel Veillard
.TH rpm2html 1 "22 Feb 1998"
.SH NAME
rpm2html \- make an html database from rpm repository
.SH SYNOPSIS
.B rpm2html
.IR
[-q][-v][-force][-lang langfile] config-file
.SH DESCRIPTION
.IX
Rpm2html tries to solve 2 big problems one face when
grabbing a RPM package from a mirror on the net and trying to
install it:
.TP 5
-
it gives more information than just the filename before installing the package.
.BR
.TP 5
-
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.
.BR
.IX
.RE
.LP
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 leading 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.
rpm2html is now ready to handle the next configuration file.
.SH CONFIGURATION
A configuration file a text file, lines beginning with semicolumns
are comments. The first part is a global section
defining some important parameters of rpm2html.
Parameters are defined with the syntax:
.TP 5
variable=value
.RE
Values shouln't be quoted and end up with the end of line
The folowing variables are supported:
.RE
.TP 10
.IR maint
The maintainer of the local mirror, NEEDED !
.TP 10
.IR mail
The E-mail of the maintainer, NEEDED !
.TP 10
.IR dir
The directory for for the HTML output, NEEDED !
.TP 10
.IR url
The URL for the HTML files on the WWW server
.TP 10
.IR host
The hostname for the server.
.RE
.BR
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
directory. 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:
.TP 10
.I name
A significant name for this mirror, NEEDED !
.TP 10
.I ftp
The original FTP/HTTP url, NEEDED !
.TP 10
.I ftpsrc
Where the associated sources are stored
.TP 10
.I color
Background color for pages
.TP 10
.I trust
Unused yet
.TP 10
.I url
The local FTP/HTTP url.
.RE
It is possible to indicate other mirrors by adding some
mirror=value lines withing the section. The first one
will be considered the local one.
.SH EXAMPLE
Example of configuration files:
.BR
.nf
.sp
;
; 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
subdir=sparc
[/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
.sp
.SH OPERANDS
The following operands are supported:
.TP 5
.I files
List of configuration files
.SH "EXIT STATUS"
The following exit values are returned:
.TP 4
.B 0
Successful completion.
.TP
.B >0
An error occurred.
.SH SEE ALSO
.BR rpm(1),
|