Guides 11791 Published by

James Strandboge has forward his Gnome 2.2 for Debian 3.0 installation notes to me:

This documents the steps I took to install gnome 2.2 on Debian woody from Debian's unstable sources. It is meant for intermediate debian user's who are familiar with debian's package management system, and is not a howto. In essence, I made notes as I went, and I tried to format them into this document that will hopefully help somebody. Before building any packages, read my BUILD NOTES section below.



REQUIRED PACKAGES

The following libraries are required to build gnome 2.2. These requirements can be found at:

http://www.gnome.org/start/2.2/notes/rninstallation.html

Package / Gnome.org / Ours
--------------------------------
pkgconfig 0.14.0 0.14.0 sid
fontconfig 2.1 2.1 sid
xft 2.1 2.1 sid
xfree86 4.2 4.2.1 sid
python 2.2 2.2.1 woody
python2.2-xml not specified 0.7 woody
docbook-xml 4.1.2 4.1.99 woody
docbook-xsl not specified 1.50.0 woody
libpng3 not specified 1.2.1 woody
libjpeg not specified 6b-5 woody
xfree86 4.2 4.2.1 sid
libpopt not specified 1.6.2 woody
libbz2 not specified 1.0.2 woody
zlib not specified 1.1.4 woody
libfam 2.6.9 2.6.9 sid

libfam 2.6.9 is required for gnome-vfs2 to compile correctly. The xfree86 packages (for i386) can be found at:

http://people.debian.org/~blade/woody/i386

The following packages from sid are also required to build various gnome2.2 packages:

Package / Ours
------------------
freetype6 2.1.3
defoma 0.11
gnutls 0.8.1
opencdk 0.4.2
libgcrypt 1.1.12
libtasn1 0.1.2
python-gtk2 1.99.14
gtkgl2 1.99.0
desktop-base 0.3.5
gob2 2.0.5
rio500 0.8.1
libflac-dev 1.1.0
nasm 0.98.34
libmpeg2-3-dev 0.3.1
liba52-0.7.4 0.7.4
libdvdread2 0.9.3
libdvdnav-dev 0.1.3
libjack0.44.0 0.44.0
libsndfile1-dev 1.0.4
libdv2-dev 0.98
libswfdec-dev 0.2.1
mozilla-dev 1.2.1
libical-dev 0.23

GNOME 2.2 PACKAGES

The following is the list of packages in the order they should be built. It is basically the same as on gnome.org, but slightly different because of build dependencies in the debian packages.

Package / Gnome.org / Ours
---------------------------------

libxml2 2.5.1 2.5.1
libxslt 1.0.24 1.0.24
gtk-doc 1.0 1.0
glib 2.2.1 2.2.1
linc 1.0.1 1.0.0
libIDL 0.8.0 0.8.0
ORBit2 2.6.0 2.6.0
intltool 0.25 0.25
gnome-common not specified 1.2.4
bonobo-activation 2.2.0 2.2.1
libbonobo 2.2.0 2.2.0
pango 1.2.1 1.2.1
atk 1.2.2 1.2.2
gtk+ 2.2.1 2.2.1
gconf1 1.0.9
gconf2 2.2.0 2.2.0
gconf-editor 0.4.0 0.4.0
gnome-mime-data 2.2.0 2.0.1
gnome-vfs2 2.2.0 2.2.2
audiofile 0.2.3 0.2.3
esound 0.2.29 0.2.28
libgnome 2.2.0.1 2.2.0.1
libart_lgpl 2.3.11 2.3.11
libglade2 2.0.1 2.0.1
libgnomecanvas 2.2.0 2.2.0.1
libbonoboui 2.2.0 2.2.0
gnome-icon-theme 1.0.0 1.0.0
libgnomeui 2.2.0.1 2.2.0.1
startup-notification 0.5 0.5
libwnck 2.2.0 2.2.0
gtk2-engines 2.2.0 2.2.0
gnome-themes 2.2 2.2
gnome-desktop 2.2.0.1 2.2.0.1
scrollkeeper 0.3.11 0.3.12
gnome-session 2.2.0.2 2.2.0.1
gnome-panel 2.2.0.1 2.2.0.1
vte 0.10.17 0.10.17
gnome-terminal 2.2.0 2.2.0
libgtop 2.0.1 2.0.1
gnome-system-monitor 2.0.4 2.0.4
gail 1.2.0 1.2.0
at-spi 1.1.8 1.0.2
libgail-gnome 1.0.2 1.0.1
gnome-applets 2.2.0 2.2.0
gnome-utils 2.2.0.3 2.2.0.3
gnome-games 2.2.0 2.2.0
metacity 2.4.34 2.4.34
control-center 2.2.0.1 2.2.0.1
librsvg 2.2.3 2.2.3
gdm2 2.4.1.3 2.4.1.3*
eel 2.2.0.2 2.2.0.2
nautilus 2.2.0.2 2.2.0.2
libgtkhtml 2.2.0 2.2.0
yelp 2.2.0 2.2.0
bug-buddy 2.2.102 2.2.0
libgnomeprint 2.2.1.1 2.2.1.1
libgnomeprintui 2.2.1.1 2.2.1.1
gedit 2.2.0.1 2.1.91
eog 2.2.0 2.2.0
acme 2.0.2 2.0
gnome-gv 1.99.98 1.99.97
file-roller 2.2.1 2.2.1
gstreamer 0.6.0 0.6.0
gst-plugins 0.6.0 0.6.0
nautilus-media 0.2.1 not built
gnome2-user-docs 2.0.5 2.0.5

additional gnome2 applications:
gnome-media 2.2.1.1 2.2.1.1
nautilus-gtkhtml not specified 0.3.2
gnome-vfs-extras2 not specified 0.99.8
gtk2-engines-thinice not specified 2.0.2
fontilus not specified 0.3.2
gaim 0.60cvs


BUILD NOTES

Unless noted below, all of these packages should be built like this:

apt-get source package
cd ./package*
dch -i
dpkg-buildpackage -rfakeroot
su -c "dpkg -i ../*package*.deb"

I built this on virgin woody, with the exception of the xfree86 development libraries (see above). I installed debian 3.0 base system, then used tasksel and chose C Development. I made sure that all the gnome1 development libraries were not on the system when I built these packages. You have to be careful, I pulled in libgtk1.2-dev building mozilla, and then built jack (used by gstreamer), which built against it rather than gtk2.0

I also needed these packages for building (but not for using) gnome2.2:
debhelper 4.1.30
debconf-utils 1.2.23
po-debconf 0.6.3
debconf 1.2.23
gettext 0.11.5
autotools-dev 20030110.1
autoconf 2.57
automake1.4 1.4-p6
automake1.7 1.7.2
libtool 1.4.3
autoconf2.13 2.57

I built them, then force-depends installed them.

The list below describes the changes I need to make to get the packages to build.

gtk+-- build against libpng-dev (libpng3-dev) instead of libpng12-0-dev in debian/control

python-gtk2-- removed python2.3 dependencies and packages from
debian/control

mozilla-dev-- built with autoconf from sid in debian/control

fam-- build as libfam0 instead of libfam0c102 in debian/control.
Remove the Conflicts line for libfam0 in debian/control.

gconf2 depended on gcc 3.2. I just removed gcc from the BuildDepends
line in debian/control.

gnome-vfs2-- need automake1.4 (not automake1.5) and libfam 2.6.9

libglade2-- change debian/control to use python2.2 instead of python
(including python2.2-xml and python2.2-xmlbase) in debian/control

libgnomeui-- removed the dependency on libarts-dev in debian/control.

vte-- changed dependency to python2.2-dev (from python-dev). Also built with gcc-3.0 instead of gcc-3.2 (debian/rules). Had to do 'ln -sf /usr/bin/python2.2 /usr/bin/python' to get it to build, because of
how configure checked the python version. Changed back after the build (ln -sf /usr/bin/python2.1 /usr/bin/python). Probably could have just not built the python-vte packages.

bug-buddy-- removed build depends on libgdk-pixbuf* in debian/control.

gnome-gv-- built with libart-2.0-dev (instead of libart-dev)

gedit-- built against woody pspell (make sure you install aspell-en or equivalent) in debian/control.

gstreamer-- built with python2.2 build dependency instead of python in debian/control

gst-plugins-- build with libpng3-dev build dependency instead of libpng12-0-dev. libflac needed to be built with g++-3.0. I also added a dependency so libarts-dev (>= 2.2.2) could be used instead of libarts1. Build with oggvorbis from woody. All of these changes in debian/control.

fontilus-- had a control info file error, so I just deleted the final blank line and it compiled.

Sources for Sid and Others

All sources were from debian sid, except xfree86 4.2.1 for woody.

Unofficial apt-get source lines:
# xfree86 4.2.1
deb http://people.debian.org/~blade/woody/i386 ./

# gaim
deb-src http://people.debian.org/~robot101/gaim unstable cvs

# for gdm2
deb-src http://people.debian.org/~ari unstable/

That's it for gnome 2.2 packages. Not too bad, but it will take a couple of GB for all the source files and compiled code. You can delete the the source directories, but keep the dsc, diff.gz and orig.tar.gz files around so you can build them again easily if needed.

I have noticed that occasionally 'fc-cache' needs to be run. This is not a problem with my packages, but rather seems to be a problem with fontconfig. An easy fix is to just drop it into ~/.bash_profile.

EXTRA PACKAGES

These packages are not required for gnome2.2, but since I was on a roll compiling all of gnome2.2, I compiled some of my favorite software for woody. A lot of these are gnome1 apps, so they should be compiled after gnome2.2, and you should remove the gnome2.2 development packages to be safe (apt-get remove libglib2.0-dev should pull most out).

Themes--
gtk2-engines-cleanice
gtk2-engines-magicchicken
gtk2-engines-spherecrystal
gnome-themes-extras

The last to I got from:
deb-src http://people.debian.org/~joss/packages ./

You need to have cleanice for gnome-themes-extras to work. Also, they may not play well with gtk-engines-* (the gtk1.2 engines), so remove them first.

galeon 1.2.7-- built without galeon-nautilus (removed galeon-nautilus from debian/control) and nautilus0 dependencies (debian/control). I also removed all references to galeon-nautilus in debian/rules. Built with woody dependencies for libgdk-pixbuf, libglade0 and
libgnome-dev (debian/control). Needed libbonobo-dev,
libbonobo-conf-dev and libbonobo-activation-dev installed.

gnucash 1.8.1-- built these extra packages from sid:
libofx-dev
libosp-dev
automake1.5
libopenhbci-dev (built without chipcard support)
libgwrapguile-dev

gnucash-docs (1.7.8). had to chmod 755 doc-tools/build-help-index to build.

evolution 1.2.2-- need to do:
apt-get remove libxml2-dev

Also built these extra packages:
gdk-pixbuf 0.22.0
evolution won't compile against the one in woody, so need to upgrade this.
Use libgnome 1.4.1.4 and remove Build-Conflicts for gdk-imlib-dev in debian/control (not sure why this is there, the build fails unless gdk-imlib-dev is installed-- maybe since its sid it wanted to use gdk-imlib1-dev?).

gal 0.23
build with libgnome-dev 1.4.1.4, libglade 1:0.17-2.2,
libgnomeprint-dev 0.35-4 in debian/control and debian/control.in

gtkhtml1.1 1.1.8
built with libgnome-dev 1.4.1 and libcapplet1-dev 1.5.11-3 in
debian/control

soup 0.7.10

pilot-link 0.11.7
used libpng2-dev intead of libpng3-dev and used python2.2-dev instead of python-dev (debian/control). Also did 'ln -sf /usr/bin/python2.2
/usr/bin/python' for the build and then changed it back after (ln -sf
/usr/bin/python2.1 /usr/bin/python).

gnome-pilot 0.1.71
built using gdk-imlib-dev instead of gdk-imlib1-dev

gnome-pilot-conduits 0.10
not required, but good to have. Built with gdk-imlib-dev instead of gdk-imlib1-dev and libcapplet1-dev instead of libcapplet-dev.

evolution 1.2.2
after installing the above, adjust debian/control to build against libldap2-dev 2.0.23-6.3, gdk-imlib-dev (not gdk-imlib1-dev) in
debian/control

That's it. Enjoy!

James Strandboge
jstrand1@rochester.rr.com