Subject: experiences with X11BASE as LOCALBASE under NetBSD
To: None <tech-pkg@netbsd.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 02/06/2004 11:52:40
The following are some notes on my experiences with setting X11BASE to
LOCALBASE (which is default /usr/pkg) using NetBSD/i386 1.6.2_RC3.
I am not using xpkgwedge. It is not needed.
I moved my /var/db/pkg out of the way. I moved /usr/X11R6 out of the way.
My /usr/pkg was already gone.
=-=-=-=
$ cat /etc/mk.conf
PACKAGES=
${_PKGSRCDIR}/packages/${OPSYS}/${OS_VERSION}/${MACHINE_ARCH}
WRKOBJDIR= /tmp/pkgsrc # build here instead of in pkgsrc
OBJHOSTNAME= yes # use work.`hostname`
SU_CMD=/usr/pkg/bin/sudo /bin/sh -c
#SU_CMD=/usr/bin/sudo /bin/sh -c
PYTHON_VERSION_DEFAULT=23pth
X11BASE= ${LOCALBASE}
PKG_DBDIR=/var/db/pkg3
USE_PKGSRC_XFREE86= YES
-=-=-=-=-
This is from cvs from yesterday. (I started yesterday.)
I installed sudo.
Here are the packages installed before X was installed:
digest-20021220 Message digest wrapper utility
sudo-1.6.7.5 Allow others to run commands as root
xdg-dirs-1.0 Shared XDG directories
gnome-dirs-1.2 Shared GTK/GNOME (v1 and v2) directories
gnome2-dirs-1.2nb1 Shared GTK/GNOME (v2) directories
gethost-0.03 Hostname and IP resolver for testing /etc/hosts and nsswitch.conf
perl-5.6.1nb10 Practical Extraction and Report Language
libtool-base-1.4.20010614nb19 Generic shared library support script (the script itself)
libiconv-1.9.1nb1 Character set conversion library
pth-2.0.0 GNU Portable Thread library
pkgconfig-0.15.0 System for managing library compile/link flags
gmake-3.80nb2 GNU version of 'make' utility
glib2-2.2.3nb1 Some useful routines for C programming
popt-1.7nb4 Command line option parsing library
libIDL-0.8.2nb1 CORBA Interface Definition Language parser
ORBit2-2.8.2 High-performance CORBA ORB with C language support
xmlcatmgr-2.0beta1 XML and SGML catalog manager
libxml2-2.6.5 XML parser library from the GNOME project
GConf2-2.4.0.1nb4 Configuration database system used by GNOME (v2)
libbonobo-2.4.2nb1 GNOME2 Object activation framework library
python23-pth-2.3.3nb1 Interpreted, interactive, object-oriented programming language
atk-1.4.1 Set of interfaces for accessibility
freetype2-2.1.5 Font rendering engine and library API
expat-1.95.6nb1 XML parser library written in C
fontconfig-2.2.1nb3 Library for configuring and customizing font access
Yesterday, I posted patch to this list for bsd.buildlink2.mk so I could
use same X11BASE as LOCALBASE. Then I posted another patch for
bsd.buildlink3.mk.
Xrender failed because needed x11-links which needed X headers.
I patched some of XFree86 packages to make them install to X11BASE (and
not define its own X11BASE as /usr/pkg/X11R6) so my imake is at
/usr/pkg/bin/imake and my libX11.so is at /usr/pkg/lib/libX11.so.
(I also patched the XFree86-libs to not have a conflict, even though it
probably does. And PLISTS for XFree86 packages are wrong too; they shuld
have some PLIST_SUBST to set the X11R6/ directory prefix; I started on
that.)
Then I installed x11-links. It created broken links when used with
buildlinking. This is caused by some symlink adjustment (I don't know why)
in pkg_install. I worked-around this with:
cat work.bigfour/.PLIST | grep -v @ | less | cut -d '/' -f 3- | while
read line ; do ln -fs /usr/pkg/$line /usr/pkg/share/x11-links/$line ; done
(I had some problems with missing Xt libraries and includes and others,
but it is because XFree86 built wrong, because of my wrong fix. I fixed
that and reinstalled and rebuilt the x11-links and all was well.)
So then I installed www/epiphany (new GNOME-based Mozilla in pkgsrc).
So then these other packages were installed (X11BASE is LOCALBASE is
/usr/pkg):
imake-4.3.0nb1 Imake and other utilities from XFree86
XFree86-libs-4.3.0nb1 XFree86 Libraries
x11-links-0.20 Shadow tree of links to ${X11BASE} headers and libraries
render-0.8 Headers for X11 render extension
Xrender-0.8.3nb1 Client library for the X Rendering Extension protocol
Xft2-2.1.2nb1 Library for configuring and customizing font access
pango-1.2.5nb1 Library for layout and rendering of text
jpeg-6bnb1 IJG's jpeg compression utilities
png-1.2.5nb2 Library for manipulating PNG images
tiff-3.6.1 Library and tools for reading and writing TIFF data files
gtk2+-2.2.4nb3 The GIMP Toolkit - libraries for building X11 user interfaces
libglade2-2.0.1nb14 Runtime interpreter for GLADE GUI files (v2)
unzip-5.50nb2 List, test and extract compressed files in a ZIP archive
iso8879-1986nb3 Character entity sets from ISO 8879:1986 (SGML)
docbook-4.2nb4 SGML DTD designed for computer documentation
libaudiofile-0.2.4 Sound library for SGI audio file
esound-0.2.32 The Enlightened sound daemon
cdparanoia-3.0.9.8 CDDA reading utility with extra data verification features
gnome-mime-data-2.4.0 MIME and Application database for GNOME2
gnome-vfs2-2.4.1nb2 GNOME Virtual File System (v2)
libxslt-1.1.2nb1 XSLT parser library from the GNOME project
libgnome-2.4.0nb2 Core GNOME2 library (non-graphical)
libart2-2.3.16 High-performance 2D graphics library
libgnomecanvas-2.4.0nb2 GNOME Canvas library
libbonoboui-2.4.1nb3 GNOME2 Object activation framework library (graphical version)
libgnomeui-2.4.0.1nb3 Core GNOME2 graphical libraries
docbook-xml-4.2nb5 XML DTD designed for computer documentation
p5-XML-Parser-2.31nb1 Perl extension interface to James Clark's XML parser, expat
intltool-0.28 Toolbox for internationalisation
scrollkeeper-0.3.14nb1 Open Document Cataloging Project
zip-2.3nb2 Create/update ZIP files compatible with pkzip
m4-1.4nb1 GNU version of Unix m4 macro-processor
autoconf213-2.13 Generates automatic source code configuration scripts (old version)
mozilla-gtk2-1.6nb1 Full featured gecko-based browser built on gtk2
epiphany-1.0.7 The web browser for the GNOME Desktop
epiphany would not run. No fonts. I ran fc-cache, but no fonts. So I
installed the 100dpi and Scalable fonts:
XFree86-clients-4.3.0nb1 XFree86 client programs and related files
XFree86-fontsEncodings-4.3.0nb1 XFree86 Encoding fonts
XFree86-fonts100dpi-4.3.0nb1 XFree86 bitmap 100dpi fonts
XFree86-fontsScalable-4.3.0nb1 XFree86 scalable fonts
And then fc-cache worked. And epiphany still wouldn't run:
** ERROR **: Couldn't mkdir /home/reed/.gnome2/epiphany/favicon_cache/
.gnome2/epiphany did exist, so I made that final directory. And epiphany
worked (with some minor WARNINGS). (If you're curious: I am running this
remotely using my local X server.)
Some file conflicts are:
include/X11/extensions/render.h
include/X11/extensions/renderproto.h
lib/libXrender.a
lib/libXrender.so*
Other conflicts could be MesaLibs, xcursor too.
I need to figure out how to get XFree86-libs to install latest versions
or not install at all. (Can anyone help?)
It would be good if the bsd.buildlink?.mk files would use the
XFree86-libs/buildlink?.mk instead of x11-links if USE_PKGSRC_XFREE86 (or
USE_PKGSRC_X=XFree86) is chosen. Any volunteers?
bigfour:/usr/pkgsrc/www/epiphany$ ls -l /usr/pkg/X11R6 /usr/X11R6
ls: /usr/X11R6: No such file or directory
ls: /usr/pkg/X11R6: No such file or directory
bigfour:/usr/pkgsrc/www/epiphany$ type imake epiphany gnome-open
imake is /usr/pkg/bin/imake
epiphany is hashed (/usr/pkg/bin/epiphany)
gnome-open is /usr/pkg/bin/gnome-open
I think my next experiment will be to set X11BASE to LOCALBASE (/usr/pkg)
and use freedesktop.org xlibs instead of XFree86 (and don't use
x11-links).
Jeremy C. Reed
http://bsd.reedmedia.net/
p.s. It seems like MozillaFirebird (running remotely too) is faster than
epiphany.