PAF on Linux with Wine

Update: this page is completely out of date. PAF now seems to work fine in WINE.

About PAF and Wine

PAF (Personal Ancestral File) is a nice genealogy program from the Church of Jesus Christ of Latter-day Saints. It is available for download at FamilySearch. For an individual user it works really well. The main problem is that it's Windows-only.

WINE (WINE Is Not an Emulator) lets you run Windows programs on Linux. It does this by implementing the whole Windows API, and considering how unclear the APIs are, it does a really good job. There is an entry in the Wine App DB for tracking the current status of PAF in Wine, though it could use a little updating.

Current Status

So the challenge is getting PAF to work with Wine. Right now I've been able to make PAF usable but not pretty. It's an improvement from a few years ago, but it still needs work. Right now installation is ugly but working. I haven't had to many stability problems, but the interface doesn't work very well.

As you can see in the following image, PAF looks pretty normal and usable here, except for the extra minimize, maximize, and close window buttons, which seem to grow in number as I resize the window.

The following images demonstrate what I consider the number one problem. When you open an "Edit Individual" window, everything looks normal for about half of a second until the fields all get overwritten with gray (see the first picture). Once you click on a field (or at least where it should be), a few fields appear and behave normally (see the second picture). Forcing a refresh, such as by switching to a different virtual desktop and back, makes everything appear normally (see the third picture).



If anyone can explain what causes this, or how to get around it, I'll be really happy. You really shouldn't have to double-click the title bar every time you open a window.

Installing PAF

Now we're getting into voodoo territory. The method described here works for me and has worked for a few other people, but without more feedback I can't be any more definitive. Please give me any info you can. Tell me what worked, what didn't, and how you got around problems.

The first step is to install Wine. There are ebuilds and RPMs that do this. I've had success on everything I've tried since late 2003. You really want it to give you a "fake_windows" directory in your .wine, too (I think Gentoo did this automatically). Fake_windows is a directory that you use as your C: which has the basic structure set up. Programs like winesetup or winesetuptk can help out with configuring the look and feel as well as the windows "partitions."

You only need one file from Microsoft: stdole32.tlb. This is in the DCOM95 package, and I downloaded it for free from somewhere on Microsoft's web page. I think you can use one from either Windows 95 or Windows 98, but the Windows 2000 one definitely won't work. Since it's already freely available, I'm including the file right here on my web page, and hopefully they won't get too mad at me. Here's stdole32.tlb. You need to put it in C:\Windows\System or fake_windows/Windows/System.

It looks like there are two ways to actually install PAF. One way is easier except the installer crashes right near the end. The other is more mysterious and complicated, but the installer completely finishes. Whichever works for you.

To install the easy way with the exciting crash, just download PAF 5 from FamilySearch and run wine PAF5EnglishSetup.exe. Remember, it will crash near the end but it will have installed already.

To install the difficult but crash-free way, download both PAF 4 and PAF 5 from FamilySearch. Install PAF 4 by running wine PafSetup.exe. Delete the entire directory C:\Program Files\Common\InstallShield. Install PAF 5 by running wine PAF5EnglishSetup.exe.

Problems Running the PAF Installer

If you have weird problems, such as an "error installing iKernel.exe" try some of the following tricks which have worked for some other people (and let me know which worked):

Running PAF

Whichever way you installed PAF, you can run it as follows: wine .wine/fake_windows/Program\ Files/FamilySearch/Paf5/paf5.exe. Of course life is easier if you have an alias. Put the following in your .bashrc (or .zshrc): alias paf="wine $HOME/.wine/fake_windows/Program\ Files/FamilySearch/Paf5/paf5.exe" and then just type paf to start up PAF.

Conclusion

PAF works pretty decently, and all things considered isn't that awful to setup. Please let me know if any of this works for you, and please let me know about any tips or tricks to get PAF to work better.

Thanks

Thanks to Hans Fugal and Evan McNabb for letting me know what they had to do to get PAF installed.