12 December, 2006

Compiz, Beryl, and XGL

Well, last night I finally dug into all the eye-candy that is compiz and XGL. After quite an easy install process following a process listed under ubuntuguide.org I had Compiz/XGL up and running in under 20 minutes. Originally it was just Compiz/XGL, which is cool on it's own, but doesn't give a lot in the way of customization. Thats why you need to install the beryl-manager, emerald, and emerald-themes. Once I did this, I was off in eye-candy heaven.

Lucky for me my laptop has a 512MB Geforce 7600 Go in it, so it can take full advantage of this in all it's glory. Once you get used to the different types of navigation, ways to play with your desktop, shortcut keys, and other cool features, it makes playing with your desktop fun again.

As far as practicle, I could see it being very practicle. It allows you a new kind of control over your desktop, and not one desktop, but four. You again are in complete control, no more cluttered, unorganized, Click a bunch of times to get where you need to desktops. It'll have a steep learning curve for the majority of average users out there, but if it's promoted, and pushed, I could see Compiz/XGL leaping into the forefront of next-gen desktops.

I'd post some screenshots, but really, you need video to see this in all it's glory, the best place to see this is



Have fun, and I can't wait until Compiz/XGL is a standard!

08 December, 2006

Coldfusion with Active Directory

After much hesistation I started making the switch 5 days ago to convert my existing security system on the corporate portal from internal databases to Active Directory through LDAP. My hesistation was mostly due to the fact of limited info on this subject. After 5 days, we've organized or AD structure much better and I am successfully using AD for authentication and corporate structure info, and security authorization.

Coldfusion makes connection to AD through LDAP a snap (no pun intended). Let me just say, if I had of realized that it was this easy 2 years ago, I could have saved myself a lot of headaches in the multi-level security area. Now I have the fun task of trying to re-code my components to look at AD rather than internal databases. The good news is that I use frameworks such as Model-Glue, Reactor, and Coldspring, so the overall work required to make it function is minimal, it's more the small things like references and table links that are going to take the time.

To anyone building security-required in a Windows environment, even if in a Linux Environment with an LDAP server, I seriously recommend looking into integration, it could save you bundles of time, especially if someone else in the IT department manages the AD or LDAP server. You'll just have to come to a few basic understandings. ;)

01 December, 2006

Linux, Reactor Framework and Case Sensitivity

I finally got my linux box up and running with all my server software as it is required. Copied everything from my windows partition to my linux partition and then made an attempt (though futile) to run my development version of our corporate portal. Now comes a major problem that isn't present for Windows, but is present for Linux, case sensitivity.

The reactor framework has saved me bucketloads of time. Most applications these days I use the MG2 framework, and that requires Coldspring and Reactor, both excellent frameworks which save heaps of time in development. However, Reactor on this specific occasion is causing me grief. It generate all the data-dictionary objects correctly so far except for one table I have called Personnel.

I use MSSQL Server 2000 for my databases, and I can connect and query all my tables and views properly. For some reason though, when Reactor generates the data-objects for my Personnel table, it generates them with a lowercase 'p' instead of the required uppercase 'P'. This shouldn't be a problem except when it checks for the existence of the file, it looks for the uppercase version instead of the lowercase version that it created.

I'm now going through the reactor files to try and find the problem spot, this day could get long...

Edit: Found the problem to be with my Reactor.xml configuration file. In windows I could use personnel in my object relation models and windows wouldn't care. But the Reactor.xml config file creates the objects exactly how they are mentioned in this file. So when it went to access the actual file using the table name, it gave a case sensitivity error in Linux. Once I corrected my Reactor.xml file and re-initialized the project, it worked fine.

Lesson learned: don't let a linux newbie near your development environment. ;)

30 November, 2006

Ubuntu 6.10(Edgy Eft) Apache2, PHP5, MySQL & Coldfusion Install Howto

Well, it's been ages since I posted anything, but after spending 3 days trying to get Apache, PHP, MySQL, and Coldfusion all installed on my linux box and finally reaching success, I figured I should document what I did in the hopes to save others out there three days of frustation and sore skulls.

I will have to give a few thanks to a few individuals throughout this as their parts helped me get it all together. I'll start at the beggining. From a fresh Edgy Eft install. Enter the following lines into a console:

Code:
sudo aptitude purge apache2 apache2-common php5 php5-common libapache2-mod-php5 mysql
sudo aptitude install apache2 apache2-common php5 php5-common libapache2-mod-php5 mysql
This purges all old installs and config files and then re-installs a fresh copy. Thanks goes to harisund on the ubuntuforums for this one. Saved me a lot of headaches throughout my days. You can see the original post here.

Once you've finished your apache, php, and mysql install I then did the following:

Code:
sudo aptitude install phpmyadmin
This installs the phpmyadmin package for mysql.

At this point you're probably wondering, "Why is he using aptitude and not apt-get?" Well, the main reason is that I found when using aptitude to install the basics when I tried to apt-get the rest I'd get varying results from success to complete failure. Aptitude generally always worked as long as I started the basics with aptitude.

At this point go to http://localhost and make sure that you're setup is working this far, you may even want to go to http://localhost/phpmyadmin and make sure that php is parsing pages properly.

If all is good (which is should be) you're now going to need two files to install Coldfusion. At the time of this post the most current linux installer for Coldfusion was coldfusion-702-lin.bin. You can get the current file from here. You will need an adobe.com account (free) and have to log in to get the download, which is rather large. Once you've selected your preferred download and got it on the way you'll have to go get the latest wsconfig.zip file from here.

Now because Edgy Eft uses a new Linux Kernel compared to Breezy you'll have to make a modification to the installer before you can install it. cd to your download directory and type the following into a console:

Code:
cp coldfusion-<version>-lin.bin coldfusion.bak
cat coldfusion.bak | sed "s/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/" > coldfusion-<version>-lin.bin
This will comment out any instances of the term "export LD_ASSUME_KERNEL" as this seems to be incompatible with Edgy's version of libc6. Thanks to Kasp3r for this one, you can see the original post here. Now you can run the installer with the following command:

Code:
sudo sh coldfusion-<version>-lin.bin


Follow the steps to for install, you want to choose the following:
  • Server Configuration
  • Add A Sever Configuration (connector) - choose Apache
Apache Configuration is: /etc/apache2
Apache Binary is: /usr/sbin/apache2
Apache Script is: /usr/sbin/apache2ctl

Continue with the installation until completion.

Now you want to cd into your download directory where you downloaded the wsconfig.zip file to. Run the following command in a console:

Code:
sudo mv /opt/coldfusionmx7/runtime/lib/wsconfig.jar /opt/coldfusionmx7/runtime/lib/wsconfig.bak
sudo unzip wsconfig.zip -d /opt/coldfusionmx7/runtime/lib

You have now inflated the new wsconfig.jar to replace the old one. Now you want to do the following:

Code:
cd /opt/coldfusionmx7/bin
sudo ./coldfusion start

You will get some starting up text, and a connector error warning, we will fix that now. After the coldfusion server is started enter the following into the console:

Code:
sudo /opt/coldfusionmx7/runtime/bin/wsconfig

  • Choose Add
  • Select Apache and put /etc/apache2 into the configuration path
  • Check configure connectors select box
  • Click Advanced
  • put /usr/sbin/apache2 into the binary path field
  • put /usr/sbin/apache2ctl into the control script path field
  • Click Ok
  • Accept the option to restart the server.
Now you'll want to enter the following into a console:

Code:
sudo gedit /etc/apache2/apache2.conf

Look for DirectoryIndex and at the end of the line add the following seperated by spaces:

index.cfm default.cfm

Now you need to restart the Apache server:

Code:
sudo /etc/init.d/apache2 restart

Now try accessing http://localhost/CFIDE/administrator. If all goes well, you should have the coldfusion Administrator pop up in your browser. You now have PHP, MySQL, and Coldfusion configured on Apache2.

These methods worked for me, after days and days of trying. If you have any problems feel free to post and I'll try to help you sort it out, but I'm about the biggest linux newbie ever. Good luck!