Right now I'm working on creating a business intelligence application. Since I've not got much of a budget, open source is a no brainer. Like most open source projects, the documentation is the weakest part. I'm getting Pentaho Solutions to get a better handle on what is a pretty complex environment.
The employer I now work for decided to deploy Sharepoint 2007 about a year ago. Unfortunately for them, they bought neither Essential Sharepoint 2007 nor Sharepoint 2007: The Definitive Guide. As my boss put it, "that would make too much sense". I love it when I work for a company that is actually willing to spend on manuals.
Ah, I finally got OpenGroupware configured on RedHat Enterprise Linux 3. Unfortunately, the instructions to do it simply weren't adequate. I ended up running through three different sets of instructions and, by trial and error, finding out which ones worked for me and which ones didn't. Now I have my own set. Here they are for posterity:
1. Download RedHat Enterprise Linux v3 (get a 30 day free account if you don't have the budget for a subscription)
2. The 850 comes with a setup disk that handles RHEL 3. Use it. It won't work otherwise (drivers can't detect the disk which is why I'm not using Fedora Core and, yes, I know other people have made it work but Dell changes hardware inside a model and it doesn't work right now).
3. Test the media. It's tempting to skip the step but I'm losing time right now because I didn't.
4. Install yum:
A. Install urlgrabber from here and don't forget to unpack the tarball, cd into it, and then execute python setup.py bdist_rpm
b. Install python-elementtree
c. Install sqlite
d. Install sqlite-devel (optional, but I did it)
e. Install python-sqlite
f. Install python-celementtree
g. Install the actual yum package by downloading, unpacking (tar -xzf
), and then going over to /usr/src/redhat/SPECS, building the rpm (rpmbuild -ba
), and installing (rpm -Uvh /usr/src/redhat/RPMS/noarch/
).
5. Install postgresql, which RedHat has annoyingly renamed Red Hat Database (rhdb). Make sure the postgresql server rpm is installed.
6. Follow the installation instructions for postgres OGO for the most part. On my install, it was looking for all lower case letters on the db and the ogo user.
7. change the pg_hba.conf to accept tcp/ip connections as per here
local all all trust
host all all 127.0.0.1 255.255.255.255 trust
host all all 0.0.0.0 255.255.255.255 reject
**reminder**
This is not a secure setup. We're going to have to go back here later to make it secure.
8. download the red hat OGO rpms here and follow the instructions. I downloaded Third Party, Sope, and OpenGroupware and downloaded it to /root/ogo. I then cd
to it and rpm -Uvh *.rpm
installs the whole enchilada.
9. One of the things downloaded is the database schema so go back to the database install instructions and get your schema up.
$ pushd /usr/local/lib/opengroupware.org-1.0a/commands/OGo.model
$ psql -h localhost ogo ogo
Welcome to psql 7.3.3, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit
OGo=> \i Resources/pg-build-schema.psql
[output cut]
OGo=> \q
10. You're going to have to log in to ogo. This account, in my case was set to nologin. Set it up for bash (I used the KDE gui tool users and groups for this).
11. su - ogo from root and then type in Defaults read
to see if the Defaults are set correctly. In my case they were not. The LSAdaptor was set to PostgreSQL72 when it needed to be PostgreSQL (ie no version number).
12. You need to adjust ownership because you're running as ogo but you installed as root. The problem is that the LSAttachmentPath directory isn't writable. That's bad. The following code fixes the problem.
chgrp ogo /var/spool/opengroupware.org
chgrp ogo /var/spool/opengroupware.org/documents
chgrp ogo /var/spool/opengroupware.org/news
chmod 775 /var/spool/opengroupware.org
chmod 775 /var/spool/opengroupware.org/documents
chmod 775 /var/spool/opengroupware.org/news
This should result in a working install on RHEL 3, OGo 1.1
Next on the hit parade, Windows account integration, but that will be a different article.
I'm hip deep in writing something but I thought I would provide a bit of cheer for those delving into Applescript and looking to manipulate Safari.
In Apple's Applescript page devoted to Safari, they have a download link for a collection of sample scripts. One of them includes the following routine:
on new_tab()
tell application "Safari" to activate
tell application "System Events"
tell process "Safari"
click menu item "New Tab" of menu "File" of menu bar 1
end tell
end tell
end new_tab
I saw that the ability to make tabs was nice but you needed to navigate as well as close them to. Here's what I've added so far:
on next_tab()
tell application "Safari" to activate
tell application "System Events"
tell process "Safari"
click menu item "Select Next Tab" of menu "Window" of menu bar 1
end tell
end tell
end next_tab
on prev_tab()
tell application "Safari" to activate
tell application "System Events"
tell process "Safari"
click menu item "Select Previous Tab" of menu "Window" of menu bar 1
end tell
end tell
end prev_tab
on close_tab()
tell application "Safari" to activate
tell application "System Events"
tell process "Safari"
click menu item "Close Tab" of menu "File" of menu bar 1
end tell
end tell
end close_tab
What needs doing next is to be able to jump around between tabs without cycling through each one. This is for a long-term project that will allow me to pull job databases in a manner so that I can track them and it won't work so fast that some admin on the other end gets spooked and shifts things around to break my code.
A small technical reference for those who are in need of X11 from Apple and have 10.2 . Apple's taken the X11 references off their website and it's a bit difficult to find. If you download the GIS system GRASS for Mac OS X there's a nice shortcut to where you can find it though. Since the GRASS download is 155 Mb I'll save some bandwidth by giving you the direct link and the bleg is for Google to pick up and make it easier for the next fellow who wants to download it. Enjoy.
Update: this URL is better as it contains not only X11 but the SDK as well.
Unfortunately I don't know enough C to fix this one so I'm stuck for the time being:
gcc -DHAVE_CONFIG_H -I../include -I../lib -I../lib -g -O2 -c ldap.c -MT ldap.lo -MD -MP -MF .deps/ldap.TPlo -fno-common -DPIC -o .libs/ldap.lo ldap.c: In function `DynaOpen': ldap.c:88: error: `RTLD_LAZY' undeclared (first use in this function) ldap.c:88: error: (Each undeclared identifier is reported only once ldap.c:88: error: for each function it appears in.) ldap.c:89: warning: assignment makes pointer from integer without a cast ldap.c: In function `DynaGetFunction': ldap.c:114: warning: assignment makes pointer from integer without a cast make[2]: *** [ldap.lo] Error 1 make[1]: *** [all] Error 2 make: *** [all-recursive] Error 1
It was too good to be true. I hit my first misconfiguration in /openoffice/soltools/mkdepend which includes -lX11 even though I'd defined earlier that OpenOffice was to compile without it. Time to put out my first bug report... and there it is.
It's pretty easy to get around the bug but it needs to be fixed. Frankly, this sort of thing is not going to be a priority for the project maintainers but they'll eventually get around to it because it's such a trivial fix. But trivial fixes are what make polished programs and even an administrator type who mostly dabbles in code can contribute to the polish.