Subject: plan for updating guile-using pkgs to 1.6
To: None <tech-pkg@netbsd.org>
From: Greg Troxel <gdt@ir.bbn.com>
List: tech-pkg
Date: 12/03/2004 10:42:43
I've created a number of 1.6-using packages in wip/ (guile-gtk,
guile-gnome, g-wrap2, guile-lib, guile-pg, gnucash). wiz asked me
about moving all the guile packages to 1.6. I've written up the
following analysis and plan about which I request comments.
The basic intent is to provide 1.6 versions of infrastructure guile
pacakges (those used by other packages) with an unsuffixed and, and
leave 1.4 versions of those packages, where appropriate/helpful, with
14 suffixes.
The hard part about all of this is gnucash, since there is a fairly
large depenency chain. My proposal involves copying each dependency
(in tsort order) to a 14-suffixed version, repointing later
dependencies, and converting the program to something more modern.
Then, each end-user pkg can be converted at will without dependency
issues; right now it's too hard since too many things have to change
at once.
----------------------------------------
* Basic Goal:
Migrate all packages that depend on guile14 to guile (1.6). For
libraries that depend on guile, provide 14 versions if there is a need
(e.g. because of a dependency), and make the main (unnumbered) version
be for 1.6.
* Complex dependencies (indented depends on prior line):
math/guppi [this is guile 1.4 version]
finance/gnucash
devel/guile-gtk [this is guile 1.4 version]
www/galway
cad/gwave
devel/g-wrap
devel/guile-slib [this is guile 1.4 version]
devel/g-wrap
devel/g-wrap
finance/gnucash
wip/g-wrap2 [new version of g-wrap, uses guile 1.6]
wip/guile-gnome
devel/guile16-slib [this is the guile 1.6 version]
wip/guile-gnome
* IMMEDIATE PLAN
This plan aims to replace all guile-using packages that are used by
other packages with 1.6 versions, and to rename the 1.4 versions with
the 14 suffix. After this, guile-using packages should be easily
individually upgradeable, because all guile library-type packages will
have 1.6 versions available.
guile-pg:
move wip/guile-pg to databases, thereby dropping 1.4 version
[in progress by wiz]
guile-slib:
rename to guile14-slib
repoint devel/g-wrap
move wip/guile16-slib to devel/guile-slib
repoint wip/guile-gnome
guile-gtk:
rename to guile14-gtk
repoint g-wrap, galway, mwave
move wip/guile-gtk-devel to devel/guile-gtk
[note that this uses an unofficial tarball; there is
inexplicably no release of this software]
g-wrap:
move to g-wrap1
repoint finance/gnucash
[do not bother with guile 1.6 version of g-wrap1 for now]
move wip/g-wrap2 to devel/g-wrap
repoint wip/guile-gnome
gnucash:
[At this point, gnucash will still work with g-wrap1 and
guile14. wip/gnucash is an attempt at g-wrap 2 and guile 1.6.
This can persist indefinitely; it's no worse than the current
situation.]
guile-lib:
move from wip
repoint wip/g-wrap2 if next step is not simultaneous
repoint wip/guile-gnome
g-wrap:
move from wip/g-wrap2 to devel/g-wrap
repoint wip/guile-gnome
guile-gnome:
move from wip to devel/
* FUTURE
After executing above plan, reassess, and do some of the following.
* math/guppi:
Copy to guppi14 for gnucash
repoint gnucash
change to 1.6: {edit makefile, bl3: s/guile14/guile/}
check upstream for new version (gnome2?)
test with gnumeric (nonobvious dependency - via bonobo)
* finance/gnucash
Convert to use devel/g-wrap (1.9.3/2), guile 1.6, and
math/guppi (now 1.6).
* www/galway: change to guile 1.6, new upstream?
* cad/gwave: change to guile 1.6, new upstream?
* guile-{fcgi,www}: change to guile 1.6, new upstream?
* math/cassowary: change to guile 1.6, new upstream?
* misc/siag: change to guile 1.6, new upstream?
* lilypond:
wip/lilypond20 uses 1.6. It is not clear if stable lilypond
works with 1.6, but it probably does. If so, simply adjust
lilypond to use 1.6.
* devel/guile-oops
perhaps rename to guile14-oops to make it clear this is only
for 1.4. (1.6 includes GOOPS, so there is no need for a 1.6
oops package.)
* misc/gnome-utils:
This has guile commented out. This is a gnome1 package, so
it can be ignored as no longer relevant. Or, someone could
test with 1.6.