Document status: DRAFT

In this article I will document how to transform a Solaris 10 x86 core installation into a pkgsrc-powered desktop system. The Solaris core installation does not include any X11, GNOME or GNU utilites. We will use modular X.org from pkgsrc. The guide assumes that the reader has some prior experience using Solaris and pkgsrc.

Contents

  1. Installation
  2. Compiler setup
  3. pkgsrc
  4. Installing modular X.org from pkgsrc
  5. Outstanding PR's with patches
  6. Other hints
  7. See also
  8. External links

Installation

Begin by installing a Solaris core system. When done, mount the Solaris CD/DVD and install the following extra packages:

These packages are required if you intend to use modular-xorg-server from pkgsrc:


# mount -F hsfs /dev/dsk/c1t1d0p0 /mnt
# cd /mnt/Solaris10/Product
# cp -r SUNW... /var/spool/pkg
# pkgadd

To see which SUNW packages are already installed, use the /usr/bin/pkginfo command.

Compiler setup

Now you need a compiler. You have a couple of options:

pkgsrc

Got a compiler? Good! Let's download and bootstrap pkgsrc.

Grab pkgsrc.tar.gz from ftp://ftp.NetBSD.org/pub/pkgsrc/current/ and untar to /usr, or get it from CVS.

# cd /usr/pkgsrc/bootstrap
# env CFLAGS=-O2 CC=/usr/local/gcc4/bin/gcc ./bootstrap

[coffee break]

Now we can tune /usr/pkg/etc/mk.conf. I use the following additional settings:


CFLAGS+=-O2
CXXFLAGS+=-O2
CC=/usr/local/gcc4/bin/gcc
CXX=/usr/local/gcc4/bin/g++
X11_TYPE=modular
PKG_DEVELOPER=yes
PKG_DEFAULT_OPTIONS+=freetype truetype mmx subpixel official-mozilla-branding

At this point you're free to install whatever packages you like.

On Solaris 9 (at least), Python 2.4 is the latest version that will build. You may want to set PYTHON_VERSION_DEFAULT= 24 in mk.conf in order to build python packages. (As of 13feb2010.)

Installing modular X.org from pkgsrc

It is mentioned above, but easy to miss... you really want to set X11_TYPE=modular in mk.conf, otherwise none of this will work. You will also want to set MOTIF_TYPE=openmotif or MOTIF_TYPE=lesstif to avoid having pkgsrc/mk/motif.buildlink3.mk choose /usr/dt/... which requires X11_TYPE=native instead of modular.

Packages needed for modular X.org are:

Now run /usr/pkg/bin/Xorg -configure, which should work. Move the generated configuration file to /etc/X11/xorg.conf. Now you can attempt to start the server, by running Xorg with no arguments. If you get a picture, but the mouse isn't working, try to set your mouse device to "/dev/kdmouse" and the protocol to "PS/2" in xorg.conf.

TODO: write about installing firefox, desktop stuff, ...

Outstanding PR's with patches

There are some PR's with patches that solve Solaris build issues that are not yet committed. These may solve a problem you are having.

Other hints

These may not be the 'right' think to do, but are still a help to get past some issues until the right thing can be figured out:

If you encounter issues with missing libraries, refer to the pkgsrc guide first.

See also

External links