Main Page

From Stormsail
Revision as of 17:15, 11 May 2012 by Admin (talk | contribs)
Jump to navigation Jump to search

Sunray setup

how to build a SRSS 4 Posted on 2008/02/25 by Eric

http://blogs.sun.com/acworkma/entry/how_to_build_a_sun

Quick and dirty about how to get a Sun Ray server up and running for a proof of concept. Please note that while this will get things up and running, there are many items outside of the scope of this document that need to be taken into consideration for a full production enterprise deployment.

Get the goods The first step is to have an available server to install on. You will need a Solaris 10, Redhat or SUSE server. The directions here will be for installing on Solaris 10. Next you will need to download the software.

Install the Sun Ray Server Software The follow steps need to be executed as the root user of the system.

Extract the Zip:

  1. unzip srss_4.0_solaris.zip

Install Tomcat:

  1. cd srss_4.0/Supplemental/Apache_Tomcat/
  2. gzcat apache-tomcat-5.5.20.tar.gz | /usr/sfw/bin/gtar -xf -
  3. mv apache-tomcat-5.5.20 /opt/
  4. ln -s /opt/apache-tomcat-5.5.20/ /opt/apache-tomcat

Install Sun Ray Server Software:

  1. cd srss_4.0
  2. ./utinstall

Take all of the defaults

  1. reboot

Configure the Sun Ray Server Software:

  1. /opt/SUNWut/sbin/utconfig

Take all of the defaults except for: Enable remote server administration? (y/[n])? y Configure Sun Ray Kiosk Mode? (y/[n])? y

  1. reboot

Configure Parms files:

  1. mkdir /tftpboot
  2. vi /tftpboot/srssconfig

The file should look like the following: servers=

  1. /opt/SUNWut/sbin/utfwadm -A -a -V -i /tftpboot/srssconfig -f /opt/SUNWut/lib/firmware_gui

Turn on LAN connections:

  1. /opt/SUNWut/sbin/utadm -L on
  2. /opt/SUNWut/sbin/utrestart -c

At this point you have a basic Sun Ray server up and running. Any Sun Rays on the network should be displaying the Solaris log in and you should be able to log into your Solaris server through a Sun Ray.

Windows Terminal Server: One of the powerful things about the Sun Ray solution is how flexible it is. One of the things the Sun Ray solutions is really good at is displaying Windows Desktops. The following steps address how to modify your existing Sun Ray server to display windows desktops.

Install Windows connector:

Extract the Zip:

  1. unzip srwc_2.0_solaris.zip

Install the Connector: NOTE: There is a version mismatch if you are installing on Nevada instead of Solaris 10. ONLY TAKE THE FOLLOWING 2 STEPS IF YOU are ON Nevada:

  1. cd /usr/sfw/lib
  2. ln -s libcrypto.so.0.9.8 libcrypto.so.0.9.7

create a group for it

  1. groupadd utsrwc
  2. cd srwc_2.0
  3. ./installer
  4. /opt/SUNWuttsc/sbin/uttscadm -c
  5. /opt/SUNWut/sbin/utrestart -c

Configure Kiosk Mode: We will use the web interface for the Sun Ray server to configure the Sun Ray server to present windows desktops.

Log into your web admin port http://:1660 The username is admin and the password is the one you gave it during set up.

Click on the advanced tab:

Loghost - Sun Ray Administration-1

Then on the Kiosk Sub tab:

Loghost - Sun Ray Administration-2

You will see a message about no Kiosk Mode settings. Click the edit button on the right:

Loghost - Sun Ray Administration-3

Change the session drop down to Sun Ray Connectors for Windows OS In the arguments field add the name of your terminal server click on OK

Loghost - Sun Ray Administration-4

At this point you will have a kiosk mode defined and then you will need to tell the server when to use it. I personally run my demo’s with the window connector enabled for card sessions and the Solaris session displayed for non card users. This is accomplished by using the the System Policy to turn Kiosk Mode on for card users. Click on the System Policy Sub Tab on the Advanced Menu and then click on the enabled check box for Kiosk Mode under card users. Then click on the save button.

Loghost - Sun Ray Administration-5

At this point you will get a message saying the changes have been stored and you need to restart the server. Click on the link to switch to the servers tab.

Loghost - Sun Ray Administration-6

Select your server and click on cold restart Loghost - Sun Ray Administration-7

When the Sun Ray server restarts, you will now display a Solaris desktop with no card inserted, and a windows desktop with a card inserted.


Well thanks to your assistance this was really easy. For those who are interested this is what I did to get testing the new 'Sun Ray Connector for Windows'

First prepare Windows XP (Professional in this case)

1) Create a new (non-adminstrator) user for your testing purposes (or identify an existing non-administrator user)

2) Go to 'Control Panel' and select 'System' then click on the 'Remote' tab

3) Under 'Remote Desktop' click the box to 'Allow users to connect remotely to this computer'

4) Next click on the button 'Select Remote Users'

5) Click 'Add'... click 'Advanced'... click 'Find Now' and add your newly created user.

6) Get the IP address of your Windows machine

Next install the 'Sun Ray Connector for Windows' on your Sun Ray server (mine is Sol10U1 on x64 with SRSS3.1)

1) Download from http://www.sun.com/software/products/sr_connector/index.xml

2) Follow the installer instructions (which are not much more than ./installer and a utrestart plus possibly a patch)

3) Fire up /opt/SUNWuttsc/bin/uttsc <windows IP address>

4) Enjoy ;-)

Well done to the Sun engineers, it works a treat!

Regards, Rob.

Enable ICMP ping

-- https://blogs.oracle.com/joergb/entry/using_different_kiosk_sessions_for --

Using different Kiosk Sessions for different tokens By JörgB on Jun 26, 2009

Original Sun Ray Kiosk Mode or its predecessor CAM only allowed one Kiosk configuration that applied to all kiosk sessions on a server. Since SRSS 4.1 there is a little known feature that allows adding additional kiosk configurations and selecting one them based on the token.

Unfortunately configuring this feature currently requires using the utkiosk and utkioskoverride tools on the command line. This probably is the main reason why add-on solutions to do the same, like Daniel Cifuentes's Meta-Kiosk are still popular.

For those not afraid of the command line, here is a short how-to

   Create a kiosk session configuration.
   You first need to create a file (named UserSession.conf here, but you can freely choose a name) containing your kiosk session configuration. Of course you can simply create it as a text file, after reading the session.conf(4) man page. But if you prefer to use the SRSS Web Admin GUI for this step, you can do it as follows:
       Configure the session settings on the Edit Kiosk Session page
       If you are using the JDS desktop session, add the applications you want to see in the menu.
       Save your changes
       Get a root shell on one of the servers and use it to save the configuration to a file:
       # cd  # Make sure your are in a reasonable directory to store your configurations
       # PATH=${PATH}:/opt/SUNWut/sbin    # Save yourself (and me) some typing
       # utkiosk -e session -s > UserSession.conf
       If you have configured applications, also save the application list to a file:
       # utkiosk -e session -a > UserSessionApps.list
   Store your kiosk session configuration in the Sun Ray data store.
   You now need to store your configuration in SRDS, so it can be used for Sun Ray kiosk sessions. You can store each configuration under a name you choose. This example will use UserSession. Use a name that starts with a capital letter - all-lowercase names are reserved.
   If you don't need an application list, you can simply upload your UserSession.conf file like this:
   # utkiosk -i UserSession -f UserSession.conf
   If you did create an application list, the command looks like this:
   # utkiosk -i UserSession -f UserSession.conf -A UserSessionApps.list
   Configure individual tokens to use this kiosk session configuration.
   You now need to assign this configuration to selected tokens. I'll show this here for the imaginary CleverCard.0123456789 card token. You can assign kiosk setting to selected DTUs (when used without a smart card) in the same way.
       In order to apply special kiosk setting to the token, it needs to be registered (even if you don't use a "registered" access policy). If the token isn't registered yet, you can do this now without leaving the command line:
       # utuser -a "CleverCard.0123456789,localhost,0,John Doe,"
       Now you can assign the UserSession configuration to the token:
       # utkioskoverride -r CleverCard.0123456789 -s kiosk -c UserSession 
       Note: This will enable Kiosk Mode for this token, even if it isn't enabled globally.
       If you have stored multiple session configurations, you can view them using:
       # utkiosk -l
       session
       UserSession
       The session configuration is the default kiosk configuration, which is used for all kiosk session that haven't been assigned an override.


https://blogs.oracle.com/ThinkThin/entry/point_and_shoot_vdi1

Point and Shoot VDI By bhlackey on Mar 16, 2008

Certainly the most feature rich method to deliver VDI is through the use of a "broker" like the Sun Virtual Desktop Connector. This broker is then connected to VMWare Virtual Center and the combination of the two gives the environment all sorts of features like Pooling, VM Lifecycle management, one-to-one mapping, Dynamic Resource Scheduling, and VMotion.

Not all VDI environments need to have all of these features. Maybe the VM's aren't even hosted in VMWare, or maybe they're not even VM's at all as in the case with blade based PC's. Maybe there is no need for Pooling, just a one-to-one relationship. No need to manage the VM's they're already provisioned through another process.

I like to call this the "Point and Shoot" VDI architecture. It should be dead simple and easy to set up. It doesn't matter where the OS images are, just that they exist on the network and that we are going to assign one VM to one user. Here are the steps to do Point and Shoot VDI using Sun Rays.

NOTE: These examples are for SRSS 4.0

Example 1: VM's assigned to a user. The user is identified by their smart card. 1) Create the Kiosk Descriptor

   vi /etc/opt/SUNWkio/sessions/simple-vdi.conf
   KIOSK_SESSION_EXEC=$KIOSK_SESSION_DIR/start-vdi.sh
   KIOSK_SESSION_LABEL="Static Assigned VDI"
   KIOSK_SESSION_DESCRIPTION="Static VM Assignment"

2) Create the Session exec script

   mkdir /etc/opt/SUNWkio/sessions/simple-vdi
   vi /etc/opt/SUNWkio/sessions/simple-vdi/start-vdi.sh
   #!/bin/sh
    
   # Check for Card or Non-Card session
   case $SUN_SUNRAY_TOKEN in
        pseudo.\*)
             # Non-Card Session
             zenity --info --text="Please insert your smart card..."
             ;;
        \*)
             # Card Session
             # Read Other Info Field
             REG_OTHER=`/opt/SUNWut/sbin/utuser -o | \\
                  grep $SUN_SUNRAY_TOKEN | awk -F, '{print $5;}'`
             if [ "$REG_OTHER" = "" ]; then
                  zenity --error --text="This card has not been assigned a VM"
                  exit 1
             else
                  # Check for VM Availability
                  /usr/sbin/ping $REG_OTHER 2
                  if [ "$?" != "0" ]; then
                       zenity --error --text="VM $REG_OTHER is not available for connection."
                       exit 1
                  else
                       # Call uttsc Kiosk script with VM name
                       KIOSK_SESSION_DIR=/etc/opt/SUNWkio/sessions/uttsc
                       export KIOSK_SESSION_DIR
                       /etc/opt/SUNWkio/sessions/uttsc/uttsc $REG_OTHER
                  fi
             fi
             ;;
   esac
   #End
   chmod 755 /etc/opt/SUNWkio/sessions/simple-vdi/start-vdi.sh

3) Select Kiosk Mode Configuration

   Open SR Admin GUI
   Select Advanced->Kiosk
   Click Edit
   Select Static Assigned VDI from the Session type drop down.

4) Register Cards and assign VM name

   Admin GUI - Tokens Tab
   Search for currently used tokens.
   You may then pick the token and Edit that token's registration.
   You must assign a User Name. (This may be free form "Brad Lackey")
   Place the VMs DNS name in the Other Information Field.


Example 2: VM's assigned to a DTU. Identified by MAC Address

1) Setup exactly like Example 1, only with a different start-vdi.sh

   vi /etc/opt/SUNWkio/sessions/simple-vdi/start-vdi.sh
   #!/bin/sh
   if [ `uname` = Linux ] ; then
    theFlag="-P"
   fi
   theMACAddr=`cd $theFlag $UTDEVROOT ; /bin/pwd | sed 's/.\*\\(............\\)/\\1/'`
   theVM=`/opt/SUNWut/sbin/utdesktop -o | \\
               grep $theMACAddr | \\
               /usr/bin/awk -F, '{print $2;}'`
   if [ "$theVM" != "" ] ; then
        # Check for VM Availability
        /usr/sbin/ping $theVM 2
        if [ "$?" != "0" ]; then
             zenity --error --text="VM $REG_OTHER is not available for connection."
             exit 1
        fi
        # Call uttsc Kiosk script with VM name
        KIOSK_SESSION_DIR=/etc/opt/SUNWkio/sessions/uttsc
        export KIOSK_SESSION_DIR
        /etc/opt/SUNWkio/sessions/uttsc/uttsc $theVM
   else
        zenity --error --text="This Sun Ray has not been assigned a VM."
        exit 1
   fi

2) Register Desktop and assign VM name

   Admin GUI - Desktops Tab
   Search for currently connected Desktops.
   You may then pick the Desktop and Edit that it's registration.
   Place the VMs DNS name in the Location Field.




https://monkey:9090/

http://monkey:8081/home/

http://www.trainrage.com/home/how-to-complain/

http://stormsail.com/cpanel

http://paulgu.com/wiki/How_do_I_allow_only_authorized_users_to_edit_pages

http://www.apple.com/aperture/iphoto-to-aperture/how.html


Woodworking

http://www.woodworkingcentreshop.co.uk/acatalog/Triton_Spares_Workcentre_Series_2000.html

House

http://www.bricksandbrass.co.uk/diy_by_element/internal_wall/party_wall_act.php

http://idostuff.co.uk/blogs/ http://roomuptop.blogspot.co.uk/

Plex

http://192.9.200.122:32400/manage/index.html

http://forums.plexapp.com/index.php/forum/76-apple-tv-2nd-gen/

Henry

https://monkey:1661

Ubuntu 11.10 webserver - choose OpenSSH + LAMP and then install webalizer + awstats + phpmyadmin

http://www.howtoforge.com/perfect-server-ubuntu-11.10-ispconfig-3-p6

http://www.howtoforge.com/the-perfect-media-server-ubuntu-11.10-sabnzbd-sickbeard-couch-potato-headphones-serviio-p3

http://ubuntuportal.com/how-to-get-an-canon-canoscan-lide-100-scanner-to-work-in-ubuntu-11-10linux-mint-12/

http://forums.plexapp.com/index.php/forum/76-apple-tv-2nd-gen/

http://code.google.com/edu/languages/google-python-class/strings.html


SunRay

http://wiki.sun-rays.org/index.php/How_To_Section#Solaris_11

http://www.eecis.udel.edu/~bmiller/blog/2010/04/05/windows-connector-and-grub-like-menu-for-sun-rays/

https://blogs.oracle.com/mplona/entry/customized_sun_ray_kiosk_sessions

# First check the current policy on the server
root@vdiserver:# /opt/SUNWut/sbin/utpolicy
# Current Policy:
-a -z both -k both -m -u pseudo
# Change the policy (-u both) to accept card and non-card OVDC sessions
root@vdiserver:# /opt/SUNWut/sbin/utpolicy -a -z both -k both -m -u both
# Restart authentication manager (needed for policy change)
root@vdiserver:# /opt/SUNWut/sbin/utrestart -c

NZB Downloaders

 * https://192.9.200.123:9090/sabnzbd/ -> SABNZBD Monkey
 * http://192.9.200.123:8081/home/ -> SICKBEARD Monkey
 * Couch Potato -> http://couchpota.to/
 * Sick Beard -> http://www.sickbeard.com/
 * Crash Plan - online backup -> https://www.crashplan.com
 * compiler detective -> http://blogs.oracle.com/timc/entry/the_compiler_detective_what_compiler
 * BMW OEM Parts Catalog -> http://www.realoem.com/bmw/showparts.do?model=HG82&mospid=47396&btnr=17_0108&hg=17&fg=05&lang=en
 * Bimmerforums -> http://www.bimmerforums.co.uk/forum/f19/
 * BMW 5 Series Owners Forum -> http://forum.bmw5.co.uk/


 * shower stuff -> http://www.showerdoc.co.uk/forum/phpBB3/
 * extending wireless network -> http://www.unix.ms/netgear/
 * veggie box recipes -> http://www.vegbox-recipes.co.uk

Sigma 50-500 review -> http://www.bobatkins.com/photography/reviews/sigma_50-500_os_hsm_review.html

turning off macosx indexing

Example: to stop and prohibit indexing on a volume named Backup Drive you would issue one of the following commands:

sudo mdutil -i off /Volumes/Backup\ Drive
sudo mdutil -i off "/Volumes/Backup Drive"


Chilli oil recipe -> http://www.thechilliking.com/chilli-oil-recipe/

Living life to the full -> https://www.llttf.com/index.php?section=page&page_seq=12

Mencoder command line stuff -> https://wiki.archlinux.org/index.php/MEncoder

Samsung warrant checker -> http://www.samsunghddvalue.com/WebRMA/WarrantyCheck/endUserWarrantychecker.aspx

http://blog.sudobits.com/2011/10/30/best-applications-and-tweaks-for-ubuntu-11-10/

https://trac.handbrake.fr/wiki/CLIGuide


todo

Setting up PLEX on Ubuntu

To create and send snapshots via zfs use:

zfs snapshot -r rpool@today
zfs send -R rpool@today | zfs receive -F -d rpool2


  * Sort out squeezebox for itunes.
  * http://jake-tm.co.uk/?page_id=259 - DGTeam Mirror
  * [[1][Righthook IPS repository (OWAN)]]
  * [[2][Exporting iTunes playlists to a non-itunes world]]
  * [[3][One iTunes/Slimserver playlist won't work]]
  * [[4][Setting up a DNS server]]
  * [[5][Extending the netgear wireless network]]
  * [[6][Kata Practice - 2011-05-10 ]]
  * [[7][Transparent Web Proxying Ubuntu DG834G]]
  * [[8][Community Sky DG834GT Updates]]
  * [[9][Netgear DG834GT Router Tweak]]
  * [[10][Netgear DG834GT & DG834 v4- Override Target SNR]]
  * [[11][Netgear Router Firmware Downloads]]
  * [[12][Implementing vscan service with ClamAV on ZFS]]
  * [[13][OpenSolaris 2008.11 ZFS with ‘on access’ virus scan]]
  * [[14][Phoenix Park Terrace Property for Sale]]
  * [[15][Greenhouse we would like]]


  * Installing HandBrakeCLI
https://trac.handbrake.fr/browser/trunk/doc/BUILD-Linux
./configure --prefix=/opt/hand --disable-gtk --force --launch --launch-jobs=0
vi $SRC/contrib/fontconfig/module.defs
change:
#
# Under MinGW:
#
# - A 'i386-ming32-gcc' $(FONTCONFIG.GCC.gcc) command will be available,
#   and the '-arch <arch>' argument should be omitted, as it will confuse this compiler.
#
# - The $(FONTCONFIG.GCC.archs) variable is not set.
#   Therefore statically guess the target arch to be i386.
#
ifeq ($(BUILD.system),mingw)
    FONTCONFIG.cc_archoption      =
    FONTCONFIG.config_archoption  = --with-arch=i386
else ifeq ($(BUILD.system),linux)
    FONTCONFIG.cc_archoption      =
else
    FONTCONFIG.cc_archoption      = 
    FONTCONFIG.config_archoption  = --with-arch=i386
endif
cd $SRC/contrib/x264/
mv P01-solaris.patch P01-solaris


./configure --prefix=/opt/hand --disable-gtk
make contrib.fetch
make contrib.extract
make contrib.patch
libass-0.9.13.tar.gz
libiconv-1.13.1.tar.gz
download build autoconf & automake
vi /jack/HandBrake-0.9.6/contrib/x264/module.defs
add --disable-asm:
X264.CONFIGURE.extra += --disable-gpac --disable-avs --disable-lavf --disable-ffms --disable-swscale --disable-asm


cp libiconv-1.13.1.tar.gz /jack/HandBrake-0.9.6/build/contrib/libiconv
cp libass-0.9.13.tar.gz /jack/HandBrake-0.9.6/build/contrib/libass
libavcodec
vi /jack/HandBrake-0.9.6/contrib/ffmpeg/module.defs
FFMPEG.CONFIGURE.extra = \
add
--disable-ssse3


For others looking at the same issue:
We hashed this issue out off-list, using
configure CC='gcc -m64'
works, just
configure CFLAGS=-m64


ln -s /usr/bin/libtool .
For some packages, you seem to also run into trouble where libtool can't figure out what you're doing:
   $ libtool --mode=compile target-gcc -g -O2 -c foo.c
   libtool: compile: unable to infer tagged configuration
   libtool: compile: specify a tag with `--tag'
OK, so it couldn't figure out that we're compiling C code. No problem, just add the tag --tag=CC. Works when we compile:
  * [[16][Compiling HandBrake on OpenSolaris]]
  * [[17][Compiling Handbrake CLI on Nexenta]]
  * [[18][Compiling and installing ffmpeg on Solaris]]

make install fails with strange "cycle detected" errors from find and a "libavdevice.a was not found anywhere!"

   * This is because it is trying to use /usr/sbin/install which appears to be broken, or at least incompatible with GNU install.
   * Solve this by symlinking /usr/bin/ginstall to /use/bin/install (if /usr/bin is before /usr/sbin in the PATH). Essentially, get it to use ginstall instead and it works dandy. 

To install linux guest additions on Ubuntu, you need to add:

sudo apt-get install dkms

before hand.

to manually build the vb module:

/etc/init.d/vboxadd setup
  * Getting plex server installed in ubuntu
apt-get install ia32-libs 
sudo apt-get install portmap nfs-common


http://forums.plexapp.com/index.php/forum/85-plex-media-server-for-linux/

http://192.9.200.145:32400/manage/index.html

http://www.plexapp.com/linux/linux-pms-download.php

Instructions

   • Uncompress and untar the package.
   • Enter the directory that is created.
   • Run the start.sh script.
   • For Bonjour discoverability, install and run Avahi.
   • Fire up a web browser and point it to http://localhost:32400/manage
  * HandBrakeCLI ubuntu

Install restricted software:

sudo apt-get install ubuntu-restricted-extras
sudo apt-get install libdvdread4
sudo /usr/share/doc/libdvdread4/install-css.sh


root@ubuntu:~# apt-get install python-software-properties
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed
 python-software-properties
0 upgraded, 1 newly installed, 0 to remove and 48 not upgraded.
Need to get 19.7 kB of archives.
After this operation, 221 kB of additional disk space will be used.
Get:1 http://gb.archive.ubuntu.com/ubuntu/ natty/main python-software-properties all 0.80.9 [19.7 kB]
Fetched 19.7 kB in 0s (128 kB/s)                
Selecting previously deselected package python-software-properties.
(Reading database ... 47715 files and directories currently installed.)
Unpacking python-software-properties (from .../python-software-properties_0.80.9_all.deb) ...
Processing triggers for man-db ...
Setting up python-software-properties (0.80.9) ...
Processing triggers for python-central ...
root@ubuntu:~# add-apt-repository ppa:stebbins/handbrake-releases
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80/ --recv 43D3A9F60C58A7169778E6FB8771ADB0816950D8
gpg: requesting key 816950D8 from hkp server keyserver.ubuntu.com
gpg: key 816950D8: public key "Launchpad HandBrake Snapshots" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)


https://edge.launchpad.net/~stebbins/+archive/handbrake-releases

  • Joining multiple avis together
sudo apt-get install mencoder mplayer
cat b1.avi b2.avi b3.avi b4.avi b5.avi b6.avi b7.avi > bloodspell.avi
mencoder -forceidx -oac copy -ovc copy bloodspell.avi.avi -o bloodspell_final.avi

http://www.neuhalfen.name/2011/10/15/MPlayer_On_Solaris11/

mplayer rebuild for Solaris 11:

http://www.neuhalfen.name/2011/10/15/MPlayer_On_Solaris11/

build 32bits otherwise mplayer vd_codec will complain.
libmad
a52dec
libdca
xvidcore
faac
x264 ./configure --enable-pic --disable-asm --enable-shared --prefix=/opt/x264
lame


depend fmri=pkg:/developer/gcc/[email protected] type=require
depend fmri=pkg:/[email protected] type=require
depend fmri=pkg:/[email protected] type=require
depend fmri=pkg:/[email protected] type=require
depend fmri=pkg:/[email protected] type=require
depend fmri=pkg:/[email protected] type=require
depend fmri=pkg:/MBLx264@20100125 type=require
depend fmri=pkg:/[email protected] type=require


a52dec-0.7.4
faac-1.28
faad2-2.7
lame-3.99
libdca-0.0.5
libmad-0.15.1b
x264
xvidcore


libmad:
remove -fforce-mem from CFLAGS


MPlayer-1.0rc2

xvid fix -> http://seriouswebapps.com/installing-xvid-122-on-opensolaris
cd /src
tar xzf xvidcore-1.2.2.tar.gz && cd xvidcore/build/generic
CFLAGS=$( find -L /my -type d -name include -exec echo "-I{} " \; | grep -v "[.][0-9]" | grep -v "pth" | tr -d '\n' ) \
 CPPFLAGS=$( find -L /my -type d -name include -exec echo "-I{} " \; | grep -v "[.][0-9]" | grep -v "pth" | tr -d '\n' ) \
 LDFLAGS=$( find -L /my -type d -name lib -exec echo "-L{} -R{} " \; | grep -v "[.][0-9]" | tr -d '\n' ) \
 CC=gcc \
 ./configure --prefix=/my/xvidcore-1.2.2 >>mylog.txt
# modify line 133 in Makefile, replace "$(CC)" with "/bin/ld"
vi Makefile
# modify line 48 in platform.inc, to read
SPECIFIC_LDFLAGS=-h libxvidcore.$(SHARED_EXTENSION).$(API_MAJOR) -B dynamic -shared -M libxvidcore.ld -lc -lm -lpthread
vi platform.inc
gmake all >>mylog.txt && su
gmake install >>mylog.txt
ln -s /my/xvidcore-1.2.2 /my/xvidcore
ln -s libxvidcore.so.4.2 /my/xvidcore-1.2.2/lib/libxvidcore.so
ln -s /my/xvidcore/lib/* /usr/lib/
ln -s /my/xvidcore/include/* /usr/include/
exit

Package Building

pkgsend generate root > MANIFEST.files
root@monkey:/opt/package/a52dec# more MANIFEST.files
# [email protected], client release 5.11
set name=pkg.description value="ATSC A/52 stream decoder"
set name=pkg.fmri value="pkg:/[email protected],0.5.11-0.0.0"
set name=pkg.name value="ATSC A/52 stream decoder"
set name=description value="ATSC A/52 stream decoder"
set name=info.maintainer value="Andy Harrison ([email protected])"
dir group=bin mode=0755 owner=root path=usr
<snip>


pkgsend publish -s /export/repo/misc/stormsail -d root test
root@monkey:/opt/package/libdca# more trans 
<transform file dir -> default owner root>
<transform file dir -> default group bin>
<transform file -> default mode 0644>
<transform dir -> default mode 0755> 
root@monkey:/opt/package/libdca# pkgmogrify -I . -O test MANIFEST.files trans


root@monkey:/export/build/MPlayer-1.0rc4#./configure --prefix=/opt/test --extra-ldflags="-lm"
root@monkey:/export/build/MPlayer-1.0rc4#

There is a bug in the latest SVN source as you end up with an error like this:

gcc -MD -MP -Wundef -Wall -Wno-switch -Wno-parentheses -Wpointer-arith -Wredundant-decls -Wstrict-prototypes -Wmissing-prototypes -Wdisabled-optimization -Wno-pointer-sign   -Wdeclaration-after-statement -std=gnu99 -Werror-implicit-function-declaration -O4 -march=native -mtune=native -pipe -ffast-math -fomit-frame-pointer -fno-tree-vectorize  -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -Ilibdvdread4 -I. -Iffmpeg   -I/usr/X11/include  -I/usr/include/freetype2   -c -o libao2/ao_sun.o libao2/ao_sun.c
libao2/ao_sun.c: In function 'realtime_samplecounter_available':
libao2/ao_sun.c:161:35: error: 'MSGTR_AO_SUN_RtscWriteFailed' undeclared (first use in this function)
libao2/ao_sun.c:161:35: note: each undeclared identifier is reported only once for each function it appears in
gmake: *** [libao2/ao_sun.o] Error 1

Essentially MSGTR_AO_SUN_RtscWriteFailed hasn't been defined...... so let's find in out of an older release and add the following to help_mp.h:

#define MSGTR_AO_SUN_RtscWriteFailed "[AO SUN] rtsc: write failed.\n"

Mplayer doesn't like the default video out mode (I suspect due to my Nvidia card) but seems to work ok for -vo gl2. I've therefore added the following to my .mplayer/config:

hippy@monkey:~$ more .mplayer/config 
# Write your default config options here!
vo=gl2


  * http://mailman.videolan.org/pipermail/x264-devel/2012-January/008959.html -> Patch for x264 using Solaris Compilers