Safe mode in php requires that the file permissions of the running script match those of file or directory being acted upon. For the program PostNuke, which is installed by webapp-config, certain directories must be writable by the apache process. The simplest way to accomplish this is to have them owned by apache. However, safe_mode requires the script acting on them have the same UID, which means they must be owned by apache, too. By default, webapp-config installs files with root ownership. As it stands now, webapp-config cannot install PostNuke to a workable state if safe_mode is turned on. The simplest way to solve this, I think, is to make the default owner for files in the webapp-config file to match the user for the webserver.
postnuke is not in portage at all.
1) That PostNuke isn't portage does not preclude the fact that webapp-config is not compatible with php safe_mode. 2) There is an ebuild for it PostNuke anyway, http://bugs.gentoo.org/show_bug.cgi?id=38484
I'm using many webapps from portage with php in safe mode and have exactly zero problems with that. Have a look at webapp eclass and fix your postnuke ebuild so that it uses webapp_serverowned() etc. where necessary.
Other relevant info: - http://dev.gentoo.org/~chriswhite/webapp_eclass.html - /etc/vhosts/webapp-config (VHOST_DEFAULT_UID, VHOST_DEFAULT_GID)
OK, it looks like the ebuild is broken. I commented on that here, http://bugs.gentoo.org/show_bug.cgi?id=38484