OpenSolaris 1003 Dev B130 JeOS Prototype First Touch (Part Three)
This is a First Touch for JeOS like configuration on dev release targeting OpenSolaris 2010.03 release, this is not a final Prototype
and content of final OpenSolaris 2010.03 JeOS Prototype can change significantly. This instructions are published for development
and testing purposes only. Please, send your feed back, questions and suggestions to jeos-discuss@opensolaris.org
This entry is part of OpenSolaris CLI JeOS workshop
OpenSolaris 1003 Dev B130 JeOS Prototype First Touch (Part Three)
iPKG GUI tools on OSOL 1003 JeOS CLI Firts Touch
Evaluating iPKG GUI in OSOL 1003 B130 JeOS First Touch
Installing iPKG GUI in OSOL 1003 B130 JeOS First Touch
Trying VNC session based iPKG GUI in OSOL 1003 B130 JeOS First Touch
AI install hints for iPKG GUI in OSOL 1003 B130 JeOS First Touch
Install costs for iPKG GUI in OSOL 1003 B130 JeOS First Touch
iPKG GUI tools on OSOL 1003 JeOS CLI Firts Touch
iPKG GUI tools like Package Manger (SUNWipkg-gui) and Update Manager (SUNWipkg-um) use same GUI Python based PyGTK and Pango frameworks, so to ne able run them on JeOS CLI prototype we need otadd there needed remote X access, which will allow to start this tools with X output redirected to repote X display, this configuraiton will create smallest by size JeOS with iPKG GUI tools setup.
Why we need iPKG GUI, if we can make all operation in PKG CLI interface, because iPKG GUI Update Manager is main part of Update Center and its main part on Layered Unbundle SW installation delivery strategy, see 10 Simple JeOS Prototype Usage Samples (Based on JeOS VM images and Glassfish V3 Pet Catalog sample DEMO in VM Template
I already have experience with iPKG GUI tools on OpenSolaris 200906 JeOS prototype, see Minimal X env for iPKG GUI in OpenSolaris 200906 JeOS Prototype
Evaluating iPKG GUI in OSOL 1003 B130 JeOS First Touch
1. Checking iPKG GUI dependencies in OSOL 1003 B130 JeOS First Touch instance
pkg list -sa SUNWipkg-gui SUNWipkg-um NAME (PUBLISHER) SUMMARY SUNWipkg-gui GUI for Image Packaging System SUNWipkg-um Update Manager for Image Packaging System root@osol-jeos:~# pkg info -r SUNWipkg-gui SUNWipkg-um Name: SUNWipkg-gui Summary: GUI for Image Packaging System Description: GUI for Image Packaging System Category: System/Packaging State: Not installed Publisher: opensolaris.org Version: 0.5.11 Build Release: 5.11 Branch: 0.130 Packaging Date: Sat Dec 19 01:07:38 2009 Size: 4.11 MB FMRI: pkg://opensolaris.org/SUNWipkg-gui@0.5.11,5.11-0.130:20091219T010738Z Name: SUNWipkg-um Summary: Update Manager for Image Packaging System Description: Update Manager for Image Packaging System Category: System/Packaging State: Not installed Publisher: opensolaris.org Version: 0.5.11 Build Release: 5.11 Branch: 0.130 Packaging Date: Sat Dec 19 01:08:10 2009 Size: 124.03 kB FMRI: pkg://opensolaris.org/SUNWipkg-um@0.5.11,5.11-0.130:20091219T010810Z
2. Looks like UM don’t have dependecies on needed GUI compotes ???
root@osol-jeos:~# pkg contents -m -r SUNWipkg-gui | grep require depend fmri=SUNWgnome-python26-extras@0.5.11-0.130 type=require depend fmri=consolidation/ips/ips-incorporation type=require depend fmri=SUNWPython26@2.6.4-0.130 type=require depend fmri=SUNWPython@2.4.6-0.130 type=require root@osol-jeos:~# pkg contents -m -r SUNWipkg-um | grep require depend fmri=consolidation/ips/ips-incorporation type=require depend fmri=SUNWPython26@2.6.4-0.130 type=require depend fmri=SUNWcs@0.5.11-0.130 type=require
3. Look how this dependencies will open with hidden dependencies
root@osol-jeos:~# pkg install -nv SUNWipkg-gui SUNWipkg-um | grep None | wc -l
30
pkg install -nv SUNWipkg-gui SUNWipkg-um | grep None | sed \
-e 's/opensolaris.org\// /'| sed -e 's/@/ /' | awk '{print $4}' | sort | xargs -n1 pkg list -saH
SUNWTiff libtiff - library for reading and writing TIFF
SUNWcairo Vector graphics library
SUNWfirefox Mozilla Firefox Web browser
SUNWgamin Library providing the FAM File Alteration Monitor API
SUNWgksu Gksu CLI and libraries
SUNWgnome-audio GNOME audio support framework
SUNWgnome-component GNOME CORBA ORB and component framework
SUNWgnome-config GNOME configuration framework
SUNWgnome-gtksourceview GNOME syntax highlighting text widget
SUNWgnome-libs GNOME platform libraries - development files
SUNWgnome-print GNOME printing technology
SUNWgnome-python26-extras Supplemental Python 2.6 bindings for GNOME
SUNWgnome-python26-libs Python 2.6 support libraries for GNOME
SUNWgnome-spell GNOME spell checker component
SUNWgnome-vfs GNOME virtual file system framework and application/MIME type registry
SUNWgtk2 GTK+ - GIMP toolkit libraries
SUNWgtkspell Gtkspell provides word-processor-style highlighting
SUNWipkg-gui GUI for Image Packaging System
SUNWipkg-um Update Manager for Image Packaging System
SUNWjpg jpeg - The Independent JPEG Groups JPEG software
SUNWlibart GNOME library for high-performace 2D graphics
SUNWlibatk GNOME accesibility toolkit libraries
SUNWlibexif EXIF tag parsing library for digital cameras
SUNWlibglade GNOME library for loading GLADE interfaces at runtime
SUNWlibgnomecanvas GNOME canvas library
SUNWlibtheora Theora video compression codec
SUNWogg-vorbis Ogg bitstream and Vorbis audio codec libraries
SUNWpango GNOME core text and font handling libraries
SUNWpapi Free Standards Group Open Printing API
SUNWpixman Pixman library
We need also to take in account then these X related stuff was already installed in system with SUNWcsd denpdencies, they can be optional in future builds:
SUNWfontconfig Fontconfig library SUNWfreetype2 FreeType2 Font library SUNWxorg-clientlibs X.Org Foundation X Client Libraries SUNWxwfsw X Window System platform required font software SUNWxwice X Window System Inter-Client Exchange (ICE) Components SUNWxwplt X Window System platform software SUNWxwxft Xft (X Freetype) Library
Excelent , great improvements from OpenSolaris 200906 time OSOL0906 Part 2: Minimal X env for iPKG GUI in OpenSolaris JeOS Prototype , we don’t have any more Media Lib or X server dependecies, but we sill see large Gnome part with audio and print support and Firefox (probably NSS and/or NSPR) ones, this is still side effect of JUMBO packages , rather then many small ones like know it Linux distributions
Installing iPKG GUI in OSOL 1003 B130 JeOS First Touch
1. Install iPKG GUI enforced dependencies
root@osol-jeos:~# pkg install SUNWipkg-gui SUNWipkg-um DOWNLOAD PKGS FILES XFER (MB) Completed 30/30 8750/8750 56.2/56.2
2. Check PM and UM with remote X redirection
root@osol-jeos:~# export DISPLAY=kutina-ws:0.0 On Workstation ruda@kutina-ws# xhost + access control disabled, clients can connect from any host Note: generally if will want to support remote X as feature we need a wrapper script standard xdpyinfo check Return back to JeIOS instance root@osol-jeos:~# xdpyinfo >/dev/null; echo $? 0root@osol-jeos:~# root@osol-jeos:~# packagemanager process 1119: D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/var/lib/dbus/machine-id": No such file or directory See the manual page for dbus-uuidgen to correct this issue. D-Bus not built with -rdynamic so unable to print a backtrace pkg install SUNWdbus DOWNLOAD PKGS FILES XFER (MB) Completed 1/1 31/31 0.4/0.4 root@osol-jeos:~# root@osol-jeos:~# packagemanager usr/bin/pm-updatemanager:219: PangoWarning: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='latin' root@osol-jeos:~# root@osol-jeos:~# pm-updatemanager /usr/bin/pm-updatemanager:219: PangoWarning: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='latin' Font are missing, installing core fonts root@osol-jeos:~# pkg install SUNWfont-xorg-core DOWNLOAD PKGS FILES XFER (MB) Completed 1/1 601/601 10.6/10.6 root@osol-jeos:~# root@osol-jeos:~# packagemanager root@osol-jeos:~# root@osol-jeos:~# pm-updatemanager
So iPKG GUI in Remote X is working but GUI interface is very ugly and unreadable,
fonts are very ugly and are difficult to read, because no FONT aliasing is enabled,
may be because Pango is not configured, if not running inside X and X Windows manager,
So I will try same workaround I use in OSOL0906, running iPKG GUI in VNCserver session.

Trying VNC session based iPKG GUI in OSOL 1003 B130 JeOS First Touch
1. Installing VNCserver and default X Windows manager
root@osol-jeos:~# pkg install -nv SUNWxvnc SUNWxwopt Package version changes: None -> pkg://opensolaris.org/SUNWxvnc@4.1.3,5.11-0.130:20091219T043633Z None -> pkg://opensolaris.org/SUNWxwopt@0.5.11,5.11-0.130:20091219T043844Z None -> pkg://opensolaris.org/SUNWxorg-xkb@0.5.11,5.11-0.130:20091219T043302Z root@osol-jeos:~# pkg install SUNWxvnc SUNWxwopt DOWNLOAD PKGS FILES XFER (MB) Completed 3/3 423/423 2.9/2.9
Note: Excellent, no more depndencies on HW related X server stuff
2. Try iPKG GUI in VNC session
root@osol-jeos:~# unset DISPLAY root@osol-jeos:~# vncserver -geometry 1600x1200 -depth 16| grep EE (EE) Cannot create /var/dt/sdtlogin directory for display manager pipe: No such file or directory (EE) AIGLX error: dlopen of /usr/lib/xorg/modules/dri/swrast_dri.so failed (ld.so.1: Xvnc: fatal: /usr/lib/xorg/modules/dri/swrast_dri.so: open failed: No such file or directory) (EE) GLX: could not load software renderer (EE) Error compiling keymap (server-1) (EE) XKB: Couldn't compile keymap (EE) Cannot create /var/dt/sdtlogin directory for display manager pipe: No such file or directory (EE) AIGLX error: dlopen of /usr/lib/xorg/modules/dri/swrast_dri.so failed (ld.so.1: Xvnc: fatal: /usr/lib/xorg/modules/dri/swrast_dri.so: open failed: No such file or directory) (EE) GLX: could not load software renderer (EE) Error compiling keymap (server-1) (EE) XKB: Couldn't compile keymap Install font server ? root@osol-jeos:~# pkg install SUNWxwfs DOWNLOAD PKGS FILES XFER (MB) Completed 1/1 6/6 0.1/0.1 Fix missing "/usr/bin/xkbcomp" issue, x kbd package don't delive this link ??? root@osol-jeos:~# pkg search -r xkbcomp | grep -v link INDEX ACTION VALUE PACKAGE basename file usr/bin/xkbcomp pkg:/SUNWxorg-server@1.7.3-0.130 root@osol-jeos:~# pkg install -nv SUNWxorg-server Package version changes: None -> pkg://opensolaris.org/SUNWxsvc@0.5.11,5.11-0.130:20091219T043523Z None -> pkg://opensolaris.org/SUNWpciaccess@0.10.9,5.11-0.130:20091219T024556Z None -> pkg://opensolaris.org/SUNWxorg-server@1.7.3,5.11-0.130:20091219T043230Z None -> pkg://opensolaris.org/SUNWxwplr@0.5.11,5.11-0.130:20091219T043907Z None -> pkg://opensolaris.org/SUNWxorg-mesa@7.4.4,5.11-0.130:20091219T043204Z root@osol-jeos:~# pkg search -r swrast_dri.so INDEX ACTION VALUE PACKAGE basename file usr/X11/lib/modules/dri/amd64/swrast_dri.so pkg:/SUNWxorg-mesa@7.4.2-0.118 basename file usr/X11/lib/modules/dri/swrast_dri.so pkg:/SUNWxorg-mesa@7.4.2-0.118 root@osol-jeos:~# pkg install SUNWxorg-server DOWNLOAD PKGS FILES XFER (MB) Completed 5/5 170/170 20.4/20.4 root@osol-jeos:~# vncserver -geometry 1600x1200 -depth 16 You will require a password to access your desktops. Password: justone1 Verify: justone1 New 'osol-jeos:1 ()' desktop is osol-jeos:1 Starting applications specified in /root/.vnc/xstartup Log file is /root/.vnc/osol-jeos:1.log
Hmm, looks like VNCserver separation from X is not correctly complete YET ???
3. Start ipkg GUI tools in VNC session
ruda@kurtina-ws:# vncviewer virual_host_ip:1 Stat pkg manager in termina windows and click mouse to place it. Close PM, and VNC session root@osol-jeos:~# vncserver -kill :1 Killing Xvnc process ID 2317
PM work wel there and is looks well, see screenshot:

AI install hints for iPKG GUI in OSOL 1003 B130 JeOS First Touch
Add this packhes to AImanifest produces Part Two this Fist Touch
1. Full list of needed packages for Remote X installation
A copy manually all requirement to one file, see here OSOL1003-JeOS-RemoteX-130.i386.lst
cat /tmp/OSOL1003-JeOS-RemoteX-130.i386.lst SUNWTiff libtiff - library for reading and writing TIFF SUNWcairo Vector graphics library SUNWfirefox Mozilla Firefox Web browser SUNWgamin Library providing the FAM File Alteration Monitor API SUNWgksu Gksu CLI and libraries SUNWgnome-audio GNOME audio support framework SUNWgnome-component GNOME CORBA ORB and component framework SUNWgnome-config GNOME configuration framework SUNWgnome-gtksourceview GNOME syntax highlighting text widget SUNWgnome-libs GNOME platform libraries - development files SUNWgnome-print GNOME printing technology SUNWgnome-python26-extras Supplemental Python 2.6 bindings for GNOME SUNWgnome-python26-libs Python 2.6 support libraries for GNOME SUNWgnome-spell GNOME spell checker component SUNWgnome-vfs GNOME virtual file system framework and application/MIME type registry SUNWgtk2 GTK+ - GIMP toolkit libraries SUNWgtkspell Gtkspell provides word-processor-style highlighting SUNWipkg-gui GUI for Image Packaging System SUNWipkg-um Update Manager for Image Packaging System SUNWjpg jpeg - The Independent JPEG Groups JPEG software SUNWlibart GNOME library for high-performace 2D graphics SUNWlibatk GNOME accesibility toolkit libraries SUNWlibexif EXIF tag parsing library for digital cameras SUNWlibglade GNOME library for loading GLADE interfaces at runtime SUNWlibgnomecanvas GNOME canvas library SUNWlibtheora Theora video compression codec SUNWogg-vorbis Ogg bitstream and Vorbis audio codec libraries SUNWpango GNOME core text and font handling libraries SUNWpapi Free Standards Group Open Printing API SUNWpixman Pixman library SUNWfontconfig Fontconfig library SUNWfreetype2 FreeType2 Font library SUNWxorg-clientlibs X.Org Foundation X Client Libraries SUNWxwfsw X Window System platform required font software SUNWxwice X Window System Inter-Client Exchange (ICE) Components SUNWxwplt X Window System platform software SUNWxwxft Xft (X Freetype) Library SUNWdbus Simple IPC library based on messages SUNWfont-xorg-core X.Org Foundation X11 core fonts
2. Full list of needed packages for VNC server installation (addons to also list for Remote X)
A copy manually all requirement to one file, see here OSOL1003-JeOS-VNCserver-130.i386.lst
cat /tmp/OSOL1003-JeOS-VNCserver-130.i386.lst SUNWpciaccess PCI bus access library and tools SUNWxorg-mesa Xorg Server Mesa Modules and Libraries SUNWxorg-server X.Org Foundation Xserver SUNWxorg-xkb X.Org Foundation Xserver keyboard layouts SUNWxsvc Sun Xserver pseudo driver SUNWxvnc X11/VNC server SUNWxwopt X Window System Optional Clients SUNWxwplr X Window System platform software configuration
Install costs for iPKG GUI in OSOL 1003 B130 JeOS First Touch
1. Remove it PKG cache stuff (including ZFS snapshot !!!)
root@osol-jeos:~# rm -r /var/pkg/download/* root@osol-jeos:~# rm -r /var/pkg/publisher/opensolaris.org/catalog/*
2. Check installed size cost
root@osol-jeos:~# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 2.28G 13.3G 80K /rpool rpool/ROOT 1.28G 13.3G 21K legacy rpool/ROOT/opensolaris 1.28G 13.3G 1.28G / rpool/dump 511M 13.3G 511M - rpool/export 70K 13.3G 23K /export rpool/export/home 47K 13.3G 23K /export/home rpool/export/home/osol 24K 13.3G 24K /export/home/osol rpool/swap 512M 13.8G 5.10M - root@osol-jeos:~# df -h Filesystem Size Used Avail Use% Mounted on rpool/ROOT/opensolaris 15G 1.3G 14G 9% / swap 717M 268K 717M 1% /etc/svc/volatile /usr/lib/libc/libc_hwcap2.so.1 15G 1.3G 14G 9% /lib/libc.so.1 swap 717M 4.0K 717M 1% /tmp swap 717M 44K 717M 1% /var/run rpool/export 14G 23K 14G 1% /export rpool/export/home 14G 23K 14G 1% /export/home rpool/export/home/osol 14G 24K 14G 1% /export/home/osol rpool 14G 80K 14G 1% /rpool /export/home/osol 14G 24K 14G 1% /home/osol
3. Switch of instance, look on disk usage and compression
init 0
Virtual disk size is 4782MB, , 7Z utra compression create 649MB file, ZIP best give 1046MB file
Well, this is not a sizes for OS JeOS downloads and pity is then when you will install additional SW , image will mostly grow, due to ZFS copy-on-write feature, see example in Glassfish based VM Template DEMO.
Best way to shrink disk is to use a ZFS send/ZFS receive procedure, similar to one I describe it here (Well, this is not a sizes for OS JeOS downloads and pity is then when you will install additional SW , image will mostly grow, due to ZFS copy-on-write feature, see example in Glassfish based VM Template DEMO).
Best way to shrink disk is to use a ZFS send/ZFS receive procedure, similar to one I describe it here [5993 Document procedure how to Shrink VDisk with ZFS send/recevie for P2V or V2V].
I will demonstrate simple script for this procedures later in Glassfish based VM Template DEMO.
4. Creating per packages costs using script for First Touch Part Two
cat /tmp/OSOL1003-JeOS-RemoteX-130.i386.lst /tmp/OSOL1003-JeOS-VNCserver-130.i386.lst | awk '{print $1}' | xargs -n 1 /tmp/sizes.bash | tee /tmp/allsized.lst
Sesult is saved as OSOL1003-JeOS-RemoteXandVNCserver-130.i386.pkgsizes.lst

[...] OpenSolaris 1003 Dev B130 JeOS Prototype First Touch (Part Three) [...]
Pingback by OpenSolaris JeOS (Main Page) « Virtual Guru's Blog – Home of Virtualization Workshops — February 7, 2010 @ 7:37 pm