Tuesday, July 27, 2010

Lotus Notes installation pains

I'm trying to install a Notes 8.5.1 client onto a computer running Windows Vista Home Premium. I've done this before without problems, but this time it's a struggle. Don't know why. The 8.5.1 install went okay. Installed from the "All clients" kit. Chose to install every option.
Then I tried to install Fixpack 3. It succeeded, but broke my Notes installation. When I tried to run Notes afterward, it informed me that ndgts.dll couldn't be found. Uninstalled Fixpack 3. Repaired Notes. Installed Fixpack 1. Same result.
I've found several references to this problem through Google, but no solutions. People seem to have solved their own problems. But nobody has documented exactly how they did so, as far as I could see.
Apparently, though, I'm having the problem on this machine because I've run earlier versions of Notes on it. I was running 8.0.2. Uninstalled it. Renamed its directory. Installed 8.5.1 into the default directory. Everything worked. I install any of the 3 fixpacks, though, and Notes stops working. What could the fixpack installers be doing that's messing me up?
I've managed a workaround that I hope has fixed the problem. After installing the Fixpack (which broke the installation as expected) I ran the Notes 8.5.1 installer in Repair mode. It repaired Notes. Notes ran. About Notes shows that the fixpack is still installed. I tested this initially with Fixpack 1, again with Fixpack 3. I hope repair mode didn't overwrite anything important with older code.
Problem is: This installation is different from two other supposedly identical (but not upgraded) installations.
  • ndgts.dll is in the Application Extension folder, not the Notes folder as in the other installations.
  • ndgts.sym isn't installed anywhere that I can see. It's in the Notes folders in the other installations.
  • ndgts.dll is dated 9/29/09 in this installation, 5/24/10 in the others. These are the dates of the files in the 8.5.1 and 8.5.1 FP3 installation folders, respectively. On checking further I see that every file that is dated 5/24/10 in the other installations is dated 9/29/09 in this one. So I'm not confident that FP3 is truly, fully installed on this workstation.
Hmm. What to do next? Reinstall! Whoopee!
So I uninstalled Notes 8.5.1, then copied the whole IBM directory to an external drive. 6037 items, 3.32 GB worth of old stuff, all so I can hold on to a few old databases. I'll have to remember to delete this stuff when I get the old DBs back into a working Notes installation.
Part Two
So, I reinstalled Notes All Clients 8.5.1. Ran it. Everything works. Made a copy of ndgts.dll. Installed Fixpack 3. Ran Notes. Drum roll...
IT WORKS! Frabjous day! Calloo! Callay!
And the copy of ndgts.dll that's in there is dated 5/24/10, as God intended! But it's in the Application Extension folder. Oh well. Who cares? It works. Time to tip-toe away before it breaks again.
BTW, I've been running everything "as administrator" even though I'm logged in as an admin. Don't know if that's necessary. But I'm paranoid about everything at this point, so "belt and suspenders" feels comforting to me about now.
What a pain!

Domino Security From 30,000 Feet

To access any bit of data on a Domino server, a user has to get over these hurdles:
  • Network or "KVM" access to the server
    • KVM access means actual or virtual access to the server's keyboard, video, and mouse. 
    • Users with KVM access may be able to bypass some of the other security measures. 
  • Authenticate with the server 
  • Server ACLs (in the Server doc, under the Security tab) 
  • File System ACL if user has requested a file in the html directory. 
  • Directory Link ACL if the data is in a database that is in a linked folder 
  • Database ACL if the data is in a database
  • Inside the database:

    • View ACL (controls who can use a view)
    • Form ACL (controls who can create documents with a form)
    • Document access
      • Section ACL (controls who can edit the fields in the section)
      • $Readers field and fields of Readers or Authors data type
        • $Readers and Readers fields control who can see/read a document
        • Authors fields control who (having Author access in the database ACL) can edit the document
      • Encrypted fields (user must have a decryption key to decrypt the data in the field)