Updating / building GNOME-2.32 before moving on to GNOME-3,0
Duncan Gibson
duncan.gibson at xs4all.nl
Tue May 3 01:04:04 CEST 2011
I just want to throw this work in progress into the ring because I
might not have time to work on it again for a while, but maybe it can
benefit someone else.
1. I ran into a problem when trying to 'lin gnome2' on a fresh install,
where there are so many modules that have optional_depends on other
key modules, not yet installed. The first such module asks for the
settings of the optional_depends module, but just queues it up ready
to be installed, but doesn't actually install it. Then the next one
asks for the same settings, and so on.
That's one flaw in the tools. Another is that there is no way of
handling the case where module A depends on B with XYZ enabled,
but module C depends on B with XYZ disabled.
Oh, and lin returns 0 even if the module failed to install, so you
can't rely on "lin -rc module || exit 0" to do the right thing :-(
2. To get round this, I wanted to try and build the GNOME-2.32 modules
one at a time, in the right order, and not rely on explicit depends
which can pull things in out of order, and implicitly enable options.
I downloaded GNOME's jhbuild system, struggled to wind the git back
to the right commit and find the gnome-2.32 moduleset configuration.
I then ran 'jhbuild list' to get the list of modules to build, and
the order to build them in. 'jhbuild update' tries to download all
of the sources for the packages.
Several bits of bad news here:
- many of the recent/new packages don't seem to have homepages
that describe them, or offer tarballs for download
- many of the packages have switched over to using git, and the
'jhbuild update' just downloads the current HEAD (I think)
- there doesn't seem to be an easy way to get a listing of package
and version/commit number so you know you have a consistent set
(there used to be a web page somewhere with this info, no?)
- maybe I screwed up the jhbuild checkout, but there seems to be
a mix of 2.32.x and 3.0 packages in the list
- in many cases 'jhbuild info package' shows that the package is
not in sync with the Lunar module equivalent (some older/newer).
- and of course there are some packages with no Lunar equivalents.
3. I used the 'jhbuild list' of modules to generate a big DEPENDS for
my gnome2 module, but that didn't work too well as I had already
tried to install gnome2 once before, so I had a mix of settings.
Therefore I generated the attached "gnome-2.32.sh" script to just
run "lin -rc" on each module in turn.
4. This has been mostly successful. Where modules are unavailable or
have failed to build, I have commented them out using "echo".
I will need to try this again on a fresh install with X, but if someone
else wants to give it a go and help iron out any problems, please do.
We probably need to go through the modules one at a time, checking that
they are at least as up-to-date as the version given by "jhbuild info".
Either that or check what versions are used in Gentoo, Arch, SM, etc.
Before we rinse and repeat for GNOME-3, do we need to consider how to
separate low-level GTK-2 libraries from the GTK-3 versions so that XFCE
and the other non-GNOME-3 clients can still use them?
Cheers
Duncan / engelsman
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gnome-2.32.sh
Type: application/octet-stream
Size: 8335 bytes
Desc: not available
URL: <http://foo-projects.org/pipermail/lunar-dev/attachments/20110503/4e02ac88/attachment.obj>
More information about the Lunar-dev
mailing list