0. Introduction
 
It is possible to use the official Linux science application binaries on FreeBSD, OpenBSD and NetBSD i386 and x64/AMD64 with the Linux Compatibility at without any great lose of performance.
The support is limited, some projects will eventually not work, or crash if the projects will release new versions. It‘s strongly recommended to use a native *BSD application version, before using the Linux Compat.
 
 
 
1. Linux Compat Installation and Configuration
 
1.1 FreeBSD
 
For some more detailed informations, please look at the FreeBSD Linux Compatibility Howto.
 
The following installation steps are described in detail in the FreeBSD Howto :
 
Enable the Kernel Loadable Object for the Linux Compat by issuing the command „kdlload linux“ as root.
 
Install a FreeBSD BOINC client from my Website, or from the FreeBSD ports. After the installation, stop
  the BOINC client.
 
• Setup the Linux Kernel version :
   • sysctl compat.linux.osrelease=2.6.32
   • echo „compat.linux.osrelease=2.6.32 „ > /etc/sysctl.conf
 
• Notes: The Linux compat worked not reliable on older FreeBSD x64 (AMD64) releases. Tested: FreeBSD  9 x64
  with i386 Linux Compat.
 
Successful tested projects: Almost All!
i386 + x86/AMD64 and FreeBSD 9.0 or newer, and with the FreeBSD Fedora 10 package almost every project will run. In my tests I have not had any non working project!
 
Not successful tested projects : None
 
 
1.2 NetBSD
 
For some detailed installation instructions, have a look at the NetBSD Linux Emulator Setup in the NetBSD Guide. Following installation steps are needed :
 
At the default Kernels Linux Compat is already enabled.
 
Download the required Linux Packages. - I have used the Fedora Base Package from OpenBSD. Unpack the package to /emul and make a link „ln -s /emul/fedora /emul/linux“
 
Install a NetBSD BOINC client from my Website. After the installation, stop the BOINC client.
 
Successful tested projects: Tests for actual NetBSD releases are on my todo list.
 
 
1.3 OpenBSD
 
Please note, that the Linux Compat is not supported on OpenBSD x64/AMD64. It‘s only available on OpenBSD i386!
 
For some detailed installation instructions, have a look at the Linux Compat in the OpenBSD FAQ Setup. Following installation steps are needed :
 
At the default Kernels Linux Compat is already included in the Kernel, but not enabled. Enable it at runtime with „sysctl kern.emul.linux=1“. And make it persistent after boot by comment to the „#kern.emul.linux=1“ in /etc/sysctl.conf
 
Download the required Linux Packages.
      The OpenBSD Fedora Package Fedora Base Package from OpenBSD is based on Fedora 4, so only few
       BOINC project working.
      I recommended the Fedora 10 Base Package from FreeBSD. Some more projects are possible to crunch.
      BOINC project working.
 
    Unpack the package to /emul and make a link „ln -s /emul/fedora /emul/linux“
 
Install a OpenBSD BOINC client from my Website. After the installation, stop the BOINC client.
 
Successful tested projects on OpenBSD i386: Albert, Asteroids, Einstein@home, MalariaControl, the Skynet POGS, World Community Grid, WUProp.
 
Not Successful tested projects on OpenBSD i386: Constellation, Distributed Data Mining, Docking, fightmalaria, Ibercivis, LHC@home, Ralph, RNA World, Rosetta
 
 
 
2. Installation of the science applications
 
Install the Linux Compat and use a client which has a alternative Platform string compiled in, which uses the native OS as first platform string, for example i686-pc-freebsd, and as second platform string i686-pc-linux-gnu.
The benefit is that no further installation is required, and if the project send out a new application, it would been used automatically.
But, if the application would not run with the Linux compat, it can produce error or invalid results.  
 
Please have a look at my BOINC download page. The provided FreeBSD, OpenBSD and NetBSD clients has the platform mechanism included.  
 
Download a BOINC client with the alternative platform string from my homepage and install it.
 
Older versions like the FreeBSD BOINC client 6.10.58 includes a binary boinc_client with the native FreeBSD platform string, and also a binary boinc_client.alt with the alternative platform string.  
Newer versions has the platform string included as default.
 
 Install the BOINC client, and start the BOINC client with ./boinc_client.alt, or for the provided 7.0.31 clients only
   with ./boinc_client, after the Linux Compat is setup as described in step 1.
 Attach to the project(s) with the Linux Application
 
 
 
FreeBSD/NetBSD/OpenBSD Linux Compatibility Howto
(c) 2008 Lars Bausch                                                                                                                                                    Last change : 14.6.2013