[wpkg-users] Dealing with localized apps
Nico de Haer
nico.dehaer at gmail.com
Tue Jul 15 19:19:35 CEST 2008
Hi all,
It seems that there is a shortcomming in wpkg when you are faced with
a package that depends on an application that comes in different
languages. For example:
Package: firefox-plugin-something, depends (obviously) on firefox,
but: I have two packages for that: firefox3-en and firefox3-nl (dutch
version)....
The fastest 'fix' to me seems to be a concept that the packaging
system of Debian uses called virtual packages (like 'httpd' for
webservers). Any package that is a webserver (apache, light-httpd)
have a tag that reads: 'provides: httpd' and other packages that need
a webserver simply depend on 'httpd' instead of 'apache'. The same can
be done for wpkg by adding an xml tag called 'provides' - It would
look something like this:
<package id="firefox3-nl" provides="firefox3" name="Mozilla Firefox 3
(Dutch version)" revision="3000" reboot="false" priority="10">
<package id="firefox3-en" provides="firefox3" name="Mozilla Firefox 3
(English version)" revision="3000" reboot="false" priority="10">
<package id="firefox-plugin-something" depends="firefox3" name="Cool
plugin for firefox 3" revision="100" reboot="false" priority="10">
An other (but more complex) approach would be to have one package with
the id 'firefox3' but add more test-logic to install different
localized versions of firefox pending on the target-system. A kind of
case construct would work:
select case locale
case nl
<install cmd="%SOFTWARE%\Internet\firefox-nl\Firefox Setup 3.0.exe -ms" />
case de
<install cmd="%SOFTWARE%\Internet\firefox-nl\Firefox Setup 3.0.exe -ms" />
case *
<install cmd="%SOFTWARE%\Internet\firefox-en\Firefox Setup 3.0.exe -ms" />
end select
On the other hand, it could be that this is already solved and that I
missed it while reading the wiki and documentation ;)
Regards,
Nico
PS: Did I mention that the idea behind WPKG is excellent and that I
like it a lot?
More information about the wpkg-users
mailing list