January 7, 2008

Leopard Bites

Specifically, Leopard's tar command. Now it, when you are creating good old .tar.gz archive, will also try to slip into it a bunch of files with names like ._.foo.xml, if your archive to contain foo.xml file.

Wisdom of internets (Leopard's tar is broken, OSX considered harmful) pointed to the solution:

  export COPYFILE_DISABLE=y
It's going straight into my ~/.profile.

Posted by Vadim at 9:44 PM | Comments (2) | TrackBack (0)

October 12, 2007

Cocoon GetTogether 2007 Photos

Yep. I finally succumbed to the peer pressure (Hey Marcus! How it's going, mate?)... and joined - no, not Dopplr or Twitter - but Flickr, and just uploaded a bunch of photos from the latest Cocoon GetTogether 2007 in Rome. In addition to the requisite pictures with faces, I have included few photos of Rome for those of you who had not had a chance to step outside of Rome Bioparco. They all are tagged with cocoongt2007, and if Flickr is not lying to me, should soon join all other photos with this tag. Enjoy!

Posted by Vadim at 10:41 AM | TrackBack (0)

October 5, 2007

Cocoon 2.2 Classic

If you have visited Cocoon GT, you might have seen a Cocoon 2.2 Classic presentation. It shows an approach, and explains the steps one should do in order to upgrade existing Cocoon 2.1 application to Cocoon 2.2 with minimal disruption to application and your existing development environment. In essence, it shows how Cocoon 2.2 can be used in old Cocoon 2.1 way - and still allows you to use new features like Spring components, Spring XML files and cocoon.xconf file configured with property files, per-sitemap Spring beans and Avalon components, and the rest.

This presentation now is available here in several formats:

Posted by Vadim at 9:36 AM | TrackBack (0)

October 4, 2007

Who Knew...

  • ... that pizza can have cucumber and cheese toppings, and actually it is really thin?
  • ... that Italians translate prosciutto as 'ham', and not prosciutto?
  • ... that porchetta is not anywhere like a pulled pork, but rather really good pork roast?
  • ... that you should order cappuccino only in the first half of the day? And, for that matter, that german sausage should be eaten for breakfast?
  • ... that lemurs are really funny and playful animals, especially in the morning when they are running and jumping around?

Thanks to Gianugo and his team for a great Cocoon GetTogether!

Posted by Vadim at 7:22 PM | Comments (2) | TrackBack (0)

August 17, 2007

Oracle Database 10g on Mac Mini

Quiet and compact Mac Mini makes nice server. And even though it's little, it can run big boys software, such as Oracle Database 10g. Here's how I did it...
  • First, follow pre-install tasks from Oracle Database Installation Guide. These include creation of oinstall and odba groups, and oracle user account. Documentation makes it easy.
  • Next, need to select right version of gcc. This is done by issuing command:
      sudo gcc_select 3.3
  • Create opt directory:
      sudo mkdir /opt
  • Perform actual Oracle install (this will take a while):
      runInstaller
    Skip running database assistant at this step.
  • Once done with it, need to do a bit of a dark magic stuff:
      cd /Users/oracle/db10g/lib/
      mv libnnz10.dylib libnnz10.dylib.ori
      /Users/oracle/db10g/bin/relink all
      mv libnnz10.dylib.ori libnnz10.dylib
    As you can see I installed it in db10g directory - adjust path as necessary.
  • Now you can run database assistant to create a database configuration instance (also takes a while on PowerPC machine):
      /Users/oracle/db10g/bin/dbca
  • Set up environment variables. I did it in my ~/.profile:
      export ORACLE_HOME=/Users/oracle/db10g
      export ORACLE_SID=ORCL
      export PATH="$PATH:$ORACLE_HOME/bin"
  • Test that it works:
      sqlplus system/<password>
That's it. When you feel like you need to stop or start oracle instance, use commands:
  sudo -u oracle /Users/oracle/db10g/bin/lsnrctl start
  sudo -u oracle /Users/oracle/db10g/bin/dbstart
And:
  sudo -u oracle /Users/oracle/db10g/bin/lsnrctl stop
  sudo -u oracle /Users/oracle/db10g/bin/dbshut
Respectively.
Posted by Vadim at 10:06 PM | TrackBack (0)

February 7, 2007

Mounting External Disk

Macs are easy to use. Everything is plug and play, really. Fun starts when you unplug... Or in this case, when you logout. That's when you notice that your shiny new external USB or FireWire hard drive (like one of those LaCie mini drives, which stack nicely under the Mac Mini) magically got unmounted and your SVN/MySQL/Oracle/whateverhaveyou stopped working. So how would you keep external drive mounted?

Problem such as this would not take more than 5 minutes to solve under Linux - just add an entry in /etc/fstab - but, under OS X, fstab is deprecated. It's not even there in the /etc directory. And adding it there is complicated by the fact that device name is not guaranteed to be the same after the reboot due to parallelism in the boot process.

So what would you do? You could use diskutil to list all available disks and their labels, find out device name for the disk, and mount it (which can be done by diskutil, too). Would make a nice shell script. But I found it is easier to just make OS X mount all disks regardless of whether user is logged in to the console or not. Done by changing system preferences with command:

sudo defaults write \
/Library/Preferences/SystemConfiguration/autodiskmount \
AutomountDisksWithoutUserLogin -bool true

Now, if only it were easy to find this gem! Thanks to mac OS X hints.

Posted by Vadim at 8:28 PM | Comments (1) | TrackBack (0)