Tag: Solaris 10


Juno on Solaris 10

Juno is an incredibly lightweight webframework. Using Python as backend, it fullfills my very need for just about every small application I want to deploy against the web. It has no need for big runtimes on the server, no files to configure a great many files and most importantly: there’s no coding overhead – the programmer defines only the distinctively wanted features.
However, installing Juno on Solaris 10 isn’t quite as easy as described in Junos’ documentation. Solaris ships with Python 2.4, but Juno depends in Jinja2(a templating engine) which itself depends on Python 2.5+. Even installing Blastwave’s or Sunfreeware’s version won’t help. But that’s no biggie since compiling your own Python is incredibly easy.

  1. Get, compile and install Python (I have used version 2.5.4)
  2. Get, compile and install Setuptools

  3. Get, compile and install pysqlite
  4. easy_install install sqlalchemy
  5. easy_install jinja2
  6. Get, compile and install Juno

Enjoy.

Comment » | articles

NVIDIA TV Out (Solaris)

Solaris Express in any recent version will have out of the box NVidia support if you install the Developer Edition or the Community Release. This driver doesn’t differ (at least as far as I know) from the Linux device driver, so setting up secondary screens and tv-outs is quite the same. There even is a preinstalled tool “nvidia-settings” which might help you do the job, but it didn’t help me that much since you have to implement at least the second screen by hand in your X configuration file.
Before you begin, make a backup of your working /etc/X11/xorg.conf file.
We will now take a look at how this xorg.conf file has to be changed for TV-Out support.

  • Change the “Device” section that it looks like this:
    Section "Device"
        Identifier              "Videocard0"
        Driver                  "nvidia"
        # optional (find out with "$ Xorg -scanpci")
        BusID                  "[Your BusID, e.g.: PCI:2:0:0]"   
        Screen                0
    EndSection
    
  • Add a new “Device” section for the TV, just like the one before, but change “Screen 0” to “Screen 1” and “Videocard0” to “Videocard1”
  • Change the “Monitor” section as follows:
    Section "Monitor"
       Identifier        "Monitor0"
       HorizSync      30.0 - 100.0       #adjust to your monitor
       VertRefresh   50.0 - 94.0         #adjust to your monitor
       Option            "DPMS"
    EndSection
    
  • Add a new “Monitor” section for the TV, just like the one before, but change “Monitor0” to “Monitor1”
  • Now we configure the possible resolutions for CRT and TV

    You will have to adjust them to your liking. “Screen0” deals with the CRT, “Screen1” with the TV.

    
    Section "Screen"
        Identifier     "Screen0"
        Device         "Videocard0"
        Monitor        "Monitor0"
        DefaultDepth    24
        Option         "metamodes" "CRT: 1600x1200 +0+0; CRT: 1400x1050 +0+0; 
        CRT: 1280x1024 +0+0; CRT: 1024x768 +0+0; CRT: 800x600 +0+0; 
        CRT: 640x480 +0+0"
        SubSection     "Display"
            Depth       24
            Modes      "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
        EndSubSection
    EndSection
    
    Section "Screen"
        Identifier     "Screen1"
        Device         "Videocard1"
        Monitor        "Monitor1"
        DefaultDepth    24
        Option         "metamodes" "TV: 1024x768 +0+0"
        SubSection     "Display"
            Depth       24
            Modes      "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
        EndSubSection
    EndSection
    
  • Now you we are physically set up and can define a Serverlayout which defines how the monitors do correspond to each other.
    In this example the CRT will be the primary monitor whereas the TV can be reached by dragging the mouse cursor out the left side of your monitor.

    Section "ServerLayout"
        Identifier     "Layout0"
        Screen      0  "Screen0" 1024 0
        Screen      1  "Screen1" LeftOf "Screen0"
        InputDevice    "Keyboard0" "CoreKeyboard"
        InputDevice    "Mouse0" "CorePointer"
    EndSection
    

Now we are all done. Save xorg.conf and restart your Xserver(in Solaris logging out and in again will do the job).
A working copy of my file as an example can be downloaded here.

3 comments » | articles

First installation troubles (Solaris)

Various small problems

VIM / Cursor Keys
If you wonder why VIM keeps writing ‘A’, ‘B’, ‘C’, ‘D’ on your screen when it is supposed just to move the cursor in writing mode, the answer is that the cursor keys are not being mapped the right way. The solution is to extend your favourite .vimrc file with:

map! ^[OD ^[h
map! ^[OC ^[l
map! ^[OA ^[k
map! ^[OB ^[j

“/usr/ucb/cc: language optional software package not installed”
/usr/ucb/cc is only a wrapper to a real C compiler. Solaris 10 won’t have a C compiler preinstalled, normally. This means that you will have to install it yourself (Sun Studio would be a good idea, too). All you have to see to then is that your PATH is set correctly; meaning that /usr/ucb is either deleted or after your real compiler.

“WARNING: loghost could not be resolved.”
That’s because your syslogd doesn’t have a defined host to work on. To fix it simply add “loghost” to your 127.0.0.1 entry in the /etc/hosts file

127.0.0.1       localhost loghost

“Sendmail: My unqualified host name (domain) unknown;”
If you get this warning on computer startup, then you haven’t configured a fully qualified domain name for your system. If you don’t need a mailing system on your computer the solution is easy by simply disabling the service via:

svcadm disable sendmail

If you need a working mailsystem, there is a howto from SUN.

3 comments » | articles