Applixware / Packaging Proprietary Software
On Packaging Proprietary Software for Debian Systems
Problem:
While Debian users usually support the open-source software approach
as documented in the DFSG they sometimes have software needs that are
not satisfied by such software. So they have two options: dump Debian
completely for this application or install proprietary software on a
Debian system in order to get their task done. In the first case this
isn't a problem of Debian anymore. In the second case it might be a
good idea to use Debian's powerful packaging software to manage the
proprietary software.
Approaches:
a) alien. Alien allows foreign packages to be installed under the
debian package manager. It can use a human-generated diff file in
order to provide special information that cannot be generated form
the original non-.deb file.
b) an installer package (as done with netscape). When the installer
package is installed it accesses the file containing the
proprietary software.
c) distribute a program that creates the package(s) from the
proprietary software's distribution medium.
My problem:
I recently bought ApplixWare 4.3.7. It is distributed as 13
.rpm-files and contains support for three languages. So in order to
create proper Debian packages I have to create dependencies between
this packages. The RPM package names are too short, I wanted to rename
them.
Advantages/Disadvantages of the approaches (incomplete ...):
a)
+ no extra package for each proprietary software needed
- uses debmake
- I didn't find a way to rename the packages
b)
- getting the location of the file with the proprietary software is
clumsy
- supporting multiple parts is difficult
c)
+ complete dependency processing possible
+ renaming of packages possible
- yet another method
My solution:
I created a package that provides a Makefile for building the
applixware packages from the original Applixware CD. ./debian/rules
can be run in two modes:
When APPLIXWARE_CD is not set, a package called
make-applixware-packages is build. This package installs the contents
of the source archive (with some modifications) into
/usr/src/make-applixware-packages/. This directory the contains a
Makefile that can be used to build the packages.
When APPLIXWARE_CD is set, it has to point to
the directory where the CD is mounted. ./debian/rules creates all
applixware packages including make-applixware-packages.
You can get the package source from
http://www.sax.de/~sr1/applixware_4.3.7-0.tar.gz .
Conclusion:
The approach works for me. I think it has advantages over the other
approaches.
I want to know what you think about the whole thing. (Remember to look
at the package source code first, it might explain things better that
I did here.)
Sven
--
Sven Rudolph <sr1@inf.tu-dresden.de>
http://www.sax.de/~sr1/
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org .
Trouble? e-mail to templin@bucknell.edu .
Reply to: