[RFC] gnuwin32/kde-windows package format
Saro Engels
ps_ml at gmx.de
Wed Jan 2 20:44:24 CET 2008
This is the first draft of a standard for the gnuwin32/kde-windows
packaging format.
Please comment on this since this will probably be the base of our
packages for a longer time. If you do, please post only the differences
to the original text and _not_ the text in a new version.
Thank you,
Saro Engels
== Package format for MS Windows ==
I.1. Packages should be normal compressed archives either in the zip
format or as a bz2-compressed tar archive.
I.2. Packages contain the file structure that gets installed to a
specific location.
One should be able to unpack the package contents to the installation
prefix.
II.1. Each package should contain a subfolder called 'manifest' which
gets installed as well. This subfolder contains at least two files per
package:
the .mft file and .ver file.
Both files have the same, following naming scheme:
packagename[-compiler][-version][-releasetag][-type].mft
packagename[-compiler][-version][-releasetag][-type].ver
where:
packagename the name of the package
compiler the name of the compiler: either 'msvc' or 'mingw';
for other compilers a name should be easily found.
For compiler independent packages the compiler can be
omitted
version the version of the package in the form major.minor.patch
version: 1.2.3
The version can be omitted
releasetag The releasetag should be used for non-versioned packages
(e.g. from svn) or as additional version information.
It can be omitted as well.
type One of 'bin' for binary packages, 'lib' for development
packages, 'doc' for documentation packages or 'src' for
packages containing source code.
The 'bin' package should contain everything that is
needed to run the application, so that the lib package
is only needed for development purposes.
If the type is omitted, this should state that the
package contains the all of 'bin', 'lib' and 'doc'.
II.2. The .mft file should contain a list of all files (relative path)
which are contained in the package, then one space character and then
the md5 sum of the file. This is the opposite of the output of md5sum.
The .mft file, the .ver file and the .cmd file do not need a md5 sum and
get appended to the original list.
II.3. In the first line of the .ver file there has to be the name of the
package, followed by a space and the version of the package, followed by
a space or a colon and a space and one out of 'Binaries', 'Developer
Files', 'Documentation' or 'Sources'. The case of those tags should be
ignored. If present, the second line starts again with the packagename,
optionally followed by a colon, followed by a space character and
followed by the description of the package (within that line).
III.1. If needed, the manifest directory should contain a file following
the above mentioned naming scheme with the extension '.cmd' .
This file should be called after installation and should be a normal
windows cmd.exe batch file.
The file shouldn't need any parameters for execution - it is required to
run it in the installation directory though.
if the file is C:\kde\manifest\package-0.1.0-bin.cmd, it should be run
in C:\kde.
More information about the Kde-windows
mailing list