Solaris Express Developer Edition is a (roughly) quarterly release of an OpenSolaris-based distribution built by Sun. It is targeted for developers creating Solaris, Java, and Web 2.0 applications. Solaris Express Developer Edition 1/08 is the fourth release in this program.
The key elements of the Solaris Express Developer Edition are:
A version of the Solaris OS targeted for developers.
Based on Solaris Express Community Edition build 79b.
Includes the latest enhancements and technologies
not yet released in the Solaris 10 OS, for example, GNOME 2.20 desktop, StarOffice 8 office productivity software, and various open source components.
Easy installation process that supports a broad range of x86-based laptop and desktop hardware.
New Solaris installer, the first new installer for the Solaris OS since Solaris 8.
Developer tools automatically installed during OS installation.
The latest developer tools and for SXDE 1/08 now including a complete Solaris/Apache/MySQL/PostgreSQL/PHP stack.
It is possible to create a SPARC equivalent by manually downloading and installing the developer tools. See question 3 below.
On which x86 systems will Solaris Express Developer Edition run?
Solaris Express Developer Edition runs on most x86 platforms. If your system is already shown on the Solaris OS Hardware Compatibility List, you should not have any problems. If your system is not listed, you can still check your hardware, prior to installing SXDE, by running the
Sun Device Detection Tool for Solaris Express .
Can you clarify the various Solaris offerings:—Solaris 10, Solaris Express
Developer Edition, Solaris Express Community Edition, and the new OpenSolaris release?
Solaris 10:—Fully supported distribution for production deployments
Price: Free license
Release schedule: Update released approximately every 6 months
Support: Full range of commercial support offerings
Patches: Available
Solaris Express Developer Edition:—OpenSolaris-based distribution of Solaris. SXDE features a new installer, and installation includes a variety of developer tools. SXDE releases undergo approximately 4 weeks of testing prior to release.
Solaris Express Community Edition:—OpenSolaris-based distribution for OpenSolaris developers. Due to the frequency of releases, it undergoes only minimal testing.
Price: Free license
Release schedule: Every 2 weeks
Support: None
Patches: Not available
OpenSolaris:—Open source repository community for developers building Sun and non-Sun distributions. These releases are built outside of Sun and feature a new package management system designed around the concept of bringing up a minimal Solaris system and then connecting to a package repository for augmenting that system.
Price: Free license
Release schedule: Beta will be released in early 2008 and the first official release will be available in the second quarter of 2008.
What are the major differences between the Solaris 10 OS and Solaris Express Developer Edition?
Solaris 10 is an enterprise-class operating system built from the Solaris 10 source tree. Solaris Express Developer Edition (and Community Edition) are built from the OpenSolaris source code repository and represent the leading edge of Solaris enhancements.
New features that appear in a Solaris 10 update must first appear in a Solaris Express Community Edition build as part of a minimum 4-week 'soak' time to work out feature and integration issues. As the Solaris 10 OS matures, fewer new features will be added to it. Those features will be in Solaris Express editions only and ultimately in the commercial successor to Solaris 10.
For a detailed list of differences between the latest SXDE release and the latest Solaris 10 release, see the comparison table.
What is the difference between Solaris Express Developer Edition and Solaris Express Community Edition?
The overall intention for Solaris Express Developer Edition is that it be a better tested version than a typical Community Edition. For example, Solaris Express Developer Edition 1/08 is based on Community Edition build 79. That build went through approximately 4 weeks of testing and problems were fixed in build 79b, the release that corresponds to SXDE 1/08.
How does the OpenSolaris binary distribution (Project Indiana) relate to
Solaris Express Developer Edition?
Solaris Express Developer Edition is built from the OpenSolaris source code, but the processes and procedures for taking individual software packages and
ultimately generating a DVD image that can be used to install an SXDE release
are unique to Sun.
Through Project Indiana these processes will be brought out into the open, enabling anyone to create a release
based on the OpenSolaris source archive.
Does Solaris offer an equivalent of the LAMP (Linux, Apache, MySQL, PHP/Perl/Python) stack?
Yes, for the first time this Solaris-Apache-MySQL-PHP stack, including PostgreSQL, is included in Solaris Express Developer Edition. After installing SXDE, see the developer guide at: file:///usr/share/doc/soldevex/html/developer_guide.html
(This is the default Firefox home page for new users.) The guide provides pointers on getting started with the Solaris web stack.
Can I develop applications using Solaris Express Developer Edition and deploy on the Solaris 10 OS?
Solaris Express Developer Edition is built from a code base that represents the next generation Solaris release. Generally this should be a safe environment for developing Solaris 10 applications. The only caution would be an obvious one:—restrict development to features and APIs that are currently supported in a Solaris 10 release.
The general guidelines for developing Solaris applications are:
Develop on Solaris Express Developer Edition
Build on the Solaris 10 OS
Deploy on the Solaris 10 OS
The Sun Ready Test Suite is available to check the compatibility of an application with Solaris 10.
For Java and scripting-based applications, applications are portable if deployed to similar application stacks on Solaris 10.
My system does not have a DVD player. Can I get CD images of Solaris
Express Developer Edition?
You can download CD images, but the developer tools will not be included. With CD images you must select the "Solaris Express" selection when first booting. That will take you through the traditional Solaris installer.
To install the Developer Tools and Sun ClusterTools 7.1, see
question #3.
Can I upgrade to Solaris Express Developer Edition from a previous Solaris or Solaris Express Community Edition release?
Sun tests upgrades from any Solaris Express Community Edition to the next Solaris Express Developer Edition. Sun also tests upgrading from the previous Solaris Express Developer Edition to the current one. Finally, Sun tests upgrading from the Solaris 9 and Solaris 10 OS to the latest SXDE release.
The safest way to upgrade is to use Solaris Live Upgrade. That approach will give you the option to revert to the pre-upgrade state if the upgrade does not work as intended. See the
Solaris Express Developer Edition Upgrade Guide.
NOTE: If upgrading from a previous Solaris 9 or 10 release, the target system must first be patched per the instructions in
Infodoc 72099 available from sunsolve.sun.com.
The most significant change came with SXDE 5/07 through the
NetWork Auto Magic (NWAM) project.
NWAM fundamentally changes the way a network interface is configured due to the addition of a new configuration daemon (nwamd). This is a major improvement over previous versions of Solaris.
If you are used to manually configuring your network connections, you may find yourself contending with the nwamd daemon. Familiarize yourself with the nwamd(1M) man page, and the
OpenSolaris Phase 0 page for additional information about NWAM.
How can I determine if Solaris Express Developer Edition will run on my x86 hardware before actually installing it?
Download the Java application,
Sun Device Detection Tool for Solaris Express Developer Edition
to determine if SXDE supports the devices on your system. This tool is supported on systems running Solaris OS, Windows, and Linux where the Java Platform, Standard Edition (Java SE) Runtime Environment (JRE) 1.5 or later is available. To learn more about the tool see the
BigAdmin Sun Device Detection Tool page.
On the installation DVD, there are four choices on the initial boot screen (see graphic below). What are the differences?
Solaris Express Developer Edition:—This is the selection that runs the new Solaris installer. The new installer greatly simplifies installing the Solaris OS. This is the default installer.
Solaris Express:—This is the selection that runs the traditional Solaris installer, i.e. the installer one uses to install the Solaris 8, 9, or 10 OS. It is not as user friendly as the new Solaris installer, but it does offer greater flexibility.
Solaris Express Serial Console ttya and ttyb:—These two options are intended for servers without graphics cards. You connect using a terminal to one of the serial ports and the traditional Solaris installer runs in tty mode.
See the following question for when to use which installer.
Solaris Express Developer Edition assumes that the system is on a
DHCP network. What if the system is not networked, or requires a static IP address?
Most networking configuration can be done through the network-admin GUI interface. Choose
Administration->Network from the main menu. You will need to disable the Network Auto-Magic daemon before making changes. See the
nwamd (1)
man page for information on switching between auto and manual modes.
For more advanced networking changes, for example to change to NIS for name services, run /usr/sbin/sys-unconfig
and reboot. When the system comes up, you will be asked a number of questions giving you much more latitude in network configuration.
As suggested in Question 2 above, I used the traditional installer to install SXDE 1/08 because I had the Solaris 10 OS also installed and I wanted the option to boot either one. The slices were defined such that SXDE would have a separate root from the other Solaris 10 root slice, and during installation the original Solaris 10 root partition was selected to be preserved as the mount point "solaris10". After the SXDE installation, the GRUB menu only contains an option to boot SXDE and not Solaris 10. How can the option to boot Solaris 10 be added to the SXDE GRUB menu?
GRUB was first supported in Solaris 10 1/06. Booting multiple versions of Solaris is more complex for Solaris versions prior to the introduction of GRUB. These include Solaris 10 3/05 and all previous Solaris 9, 8, and earlier releases. See the Solaris 10 documentation at docs.sun.com for more details.
Assuming your previously installed Solaris version was Solaris 10 1/06 or later, you will need to add the following 4 lines to /boot/grub/menu.lst:
Title <title that will appear in GRUB menu>
root (hd<disk number>,<fdisk partition number>,
<slice character,'a'=s0,'b'=s1,etc>)
kernel /platform/i86pc/multiboot
module /platform/i86pc/boot_archive
The argument for the 'Title' line is the description you would like to appear in the GRUB menu.
There are three arguments for the 'root' line. The first is the disk number. Typically the disk would be hd0 or hd1. For more general configurations, there is a routine that can provide the mapping between hd disk number and Solaris CTD (e.g. c1t0d0) disk naming.
Note that the first column of output is the hd disk number. This command is considered an unexposed internal component of the GRUB implementation, and may therefore change in a future release.
For the second argument, specify thefdisk Solaris partition number. The fdisk
command will report what is in each fdisk partition. The fdisk
command reports a value 1-4 and the 'root' line in the GRUB menu entry expects a value 0-3, so adjust accordingly.
The simplest way to run fdisk is to run the format command, select the disk,
and then select the fdisk option from within format. Make sure that you are careful to exit
fdisk without making any changes.
The final argument on the root line is to identify the slice. You will need to map the Solaris disk slice (e.g. s0, s1, s2, etc) to a character. So s0=a, s1=b, etc.
If an older version of the Solaris OS is currently installed and I want to
preserve it, how do I add a second Solaris partition in which to install
Solaris Express Developer Edition?
You can only have one Solaris partition (as designated by
fdisk). The usual strategy is to make that partition big enough to hold multiple Solaris root slices. For example, slice s0
could be Solaris 10 6/06 root (/), s1 could be swap, s2 is
(by convention) the entire disk, s3
could be root for Solaris Express Developer Edition 1/08, and s4 could be a shared /export/home between both releases.
Remember that if you want to install multiple versions of Solaris on one system, you must use the traditional Solaris installer (see Question 2).
Solaris Express Developer Edition was installed on a system that already had Linux installed and the Linux partition was preserved. When the system boots, the GRUB menu does not contain an option to boot Linux. How do I add a GRUB menu entry to boot Linux?
Hopefully you have preserved the /boot/grub/menu.lst file from your Linux
installation before installing the Solaris OS. This file is called grub.conf in some
distributions.
If you have it, copy the information to the GRUB menu in SXDE. This approach should work in many cases, as long as the Solaris version of GRUB can boot the version of Linux that is also on the system. If for some reason it does not, then instead of Solaris GRUB directly booting the Linux distro, it needs to pass control on to the GRUB that came with the Linux distro. This is accomplished through the chainload command,
title Fedora Core 6
rootnoverify (hd0,1)
chainloader +1
This assumes that stage1 of the Linux GRUB was installed in the partition (from the Linux perspective, /dev/sda2).
If you did not preserve menu.lst from your Linux installation, it is difficult to answer this question given the variety of Linux versions. For example, if you had Red Hat Enterprise Linux WS installed, the GRUB entry from
/boot/grub/menu.lst might look like
title Red Hat Enterprise Linux WS
root (hd0,0)
kernel /boot/vmlinuz-2.6.9-5.ELsmp ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.9-5.ELsmp.img
The kernel and initrd lines are highly OS dependent.
Another strategy would be to install a package that would allow you to read the contents of a Linux extended partition from within the Solaris OS. With that you could directly access the menu.lst file in the Linux partition. This
blog mentions an ext2fs package from the BeleniX open source site.
Why does /etc/release report build 79b but uname -a report
79a?
A last-minute small change came in necessitating a 79b build. However
this was not a complete build from scratch, and the build number accessed by
uname, was not updated. The difference between the two builds were some missing
lines in a couple of files related to the StarOffice program. However without the changes,
standard upgrade and Solaris Live Upgrade would fail.
When I try to install Solaris Express Developer Edition 1/08 in an 8GB
partition I get an error "User login name not specified" and "Couldn't create
install profile".
Unfortunately the error message does not have anything to do with the real problem. If you use the new installer, the minimum space required is 8.1GB.
I'm getting the following errors from sendmail when I boot: "unable to
qualify my own domain name (localhost)—using short name," "My
unqualified host name (localhost) unknown"; "sleeping for retry." How do
I get rid of them?
The following will serve to work around the problem. Assuming the name of your system is "solaris":
Look for the localhost entries in
/etc/hosts and add:
solaris solaris.local
as aliases on the same line. For example:
::1 localhost loghost solaris solaris.local
127.0.0.1 localhost loghost solaris solaris.local
How do I switch to GDM to enable nested logins as well as have more fine-grain control over reboot and shutdown options for users?
To Enable GDM:
1. Logout
2. Select from the login window:
Options->Command Line Login
3. Login as root
4. Execute the following two commands:
# svcadm disable cde-login
# svcadm enable gdm
Note: Once you have enabled gdm (which appears as gdm-binary in output from ps) you will have to be root to run Administration-> Login.
To Change back to cde-login select a GNOME Failsafe Session:
a. Execute the following command:
# svcadm disable gdm
This will immediately kill your GNOME session.
b. Log in as root
c. Execute the following commands:
# svcadm enable cde-login
# exit
Within 20 seconds the CDE login window will come up.
Once you have changed to GDM, you have much more control over what options individual users will see regarding shutdown and restart.
Edit the /etc/X11/gdm/custom.conf file.
Look for the section headed:
[greeter]
After the [greeter] text line add the line
SystemMenu=true
This will add shutdown, reboot, and suspend to the login screen 'Options' section. It will also add a 'shutdown' option to the main system menu for whoever is designated in the configuration file: /etc/default/sys-suspend. See the comments in that file for detailed information.
The preferred method is to do nothing and let Xorg detect the settings for your hardware, and only manually configure when that is wrong or special configuration is needed. If manual configuration is needed, it's easier to run
/usr/X11/bin/Xorg -configure
to get the auto-configuration saved to a file that you can edit, rather than run
xorgconfig,
which requires intimate knowledge of the hardware installed in your system. The output file is
/xorg.conf.new and must be moved to
/etc/X11/xorg.conf in order to run properly.
With regard to Firefox there are some differences between the version of Firefox that ships with the Solaris OS and the community versions available at the above URL:
The APOC adapter (Java Desktop System Configuration Manager) is enabled for the Sun version.
Only the Sun version of Firefox will recognize the plug-ins for Acroread (SPARC only), RealPlayer, Flash, and Java programs.
The tar file version of the community release can be installed in any directory, but the package version will be installed in /opt/sfw/lib/firefox. The Sun Solaris version is installed in /usr/lib/firefox.
Only the English version of Firefox is available from the community site.
Note: Update your PATH variable to point to the newly installed version of Firefox. You might want to remove or rename /usr/bin/firefox to avoid inadvertently getting the old version.
Why doesn't the DTrace GUI plug-in start when I try to bring it up from the NetBeans 6.0 IDE?
The DTrace GUI plug-in is installed for you in NetBeans IDE 6.0. To
use it, you need to copy the DTrace scripts from /opt/dtrace-gui to
your home directory:
You can access documentation for the DTrace GUI at
/opt/dtrace-gui/doc/NetBeans_DTrace_GUI_Plugin.html. This document
describes how to set privileges in the /etc/user_attr file, and how
to use the DTrace GUI. When you use the DTrace GUI, be sure to start
the NetBeans IDE 6.0 or the Sun Studio IDE from a different shell
than the one you use to set privileges.
I'm running the Solaris OS on VMware Workstation 5.5 but SXDE 1/08 hangs after "Configuring /dev". How can I work around this?
Add -B disable-mpt=true
to the kernel line in the GRUB configuration file, /boot/grub/menu.lst.
Configure the virtual machine to use IDE disks.
This bug has been passed to VMware and is fixed in VMware Workstation 6.0.
I changed my networking to NAT from bridged on the downloaded SXDE virtual machine because I don't have an available IP address for the guest OS. However when I enter a URL into the browser on SXDE, it can't find the site.
If your name services don't appear to be working, you will have to determine what nameserver your host OS uses, and put that address into the file
/etc/resolv.conf on the SXDE system.
The format of an entry is: nameserver xxx.xxx.xxx.xxx
where the x's represent the IP address. Typically, you would specify at least two nameservers.
I have two network interfaces on my system (Ethernet and wireless
adaptors). Both were mapped to vmnet virtual interfaces during installation of
VMware, but during startup, the Solaris guest can't access the network. What's
wrong?
Solaris is probably using the inactive vmnet interface. Here is what you need to do:
Stop the VM
Click Edit virtual machine settings
Select Ethernet 1
Change the Network Connection option from Bridged to Custom: Specific virtual network
Select the vmnet interface that is associated with the active network
interface.
Start the Solaris VM.
If you don't know which vmnet interface is associated with your physical network interfaces, see the following question.
How do I cause the VM to boot from the DVD so that I can start an upgrade process?
There are a couple of options.
For best performance, use an ISO image instead of a physical DVD.
Under VMware Workstation:
Select VM->Settings, and then select CD-ROM.
On the right side of that window select Use ISO image.
If using an ISO image is impractical, you can add a line to the VMware configuration file.
This is the file with the suffix .vmx, (for example, SunSXDE108.vmx).
Add the line:
bios.forceSetupOnce = "TRUE"
This will force booting from DVD.
Or you can permanently extend the BIOS screen delay using:
If you use the traditional installer (see Install Question 2 for an explanation of the installers), you can build a minimal Solaris OS without developer tools or a window system in under 2GB.
VMware Tools work with the Solaris 10 OS, but not completely with Solaris Express Developer Edition. Specifically, you can't cut and paste between the host and guest SXDE 1/08 systems. You also can't drag and drop files between guest and host.
The error is "file system 'vmhgfs' version mismatch".
Sun recently acquired VirtualBox, a VMware Workstation-like open source offering. VirtualBox advertises that it can read VMware .vmdk files. Can I download the SXDE 1/08 VMware virtual machine and run in VirtualBox?
It is not yet supported by Sun. The SXDE 1/08 virtual machine is delivered as multiple .vmdk files (each no larger than 2GB). VirtualBox can only support a single .vmdk file.