This is a good question as to what is PPI compatible since some some extensions contain files that may be above /usr/local yet they are not essential to the extension's operation or they could be listed in the info file as needing to be backed up. Pppsetup is one example as it's config files are in /etc though the rest of the extension is in /usr/local. It was going to be a long battle recreating the script to use /usr/local/etc as the config directory so I sort of gave up and stuck with /etc as the config dir and listed in the info file what to back up. So it is sort of PPI compatible. To me it is still kind of a grey area, but I guess for now we should go by the simple and hard rule that nothing is to be above /usr/local/ in the extension itself.
When files just have to be in the base system, like /bin/bash, putting a test in the install script to create a symlink will often work. Bash is PPI compatible as a result of the startup script symlinking /usr/local/bin/bash to /bin/bash. I personally avoid putting anything in the home directory as it will overwrite stuff there when someone is using persistent home. Especially now that we have the USER boot option and there are other users than tc. I see /home/tc is where the htdocs are and that would not benefit someone who is booting as a different user. Being multiuser makes it not optimal to place extension files in /home/tc. If I was using the home directory as the web server directory, in the config I would set the server root to "/home/$USER/htdocs" or "~/htdocs". Also, I would store the index.html say in /usr/local/example. Then in the install script put:
[ -e /home/$USER/htdocs ] || mkdir /home/$USER/htdocs && cp /usr/local/example/index.html /home/$USER/htdocs/
That way the extension is PPI compatible and will not overwrite an existing index.html that is in persistent home.
I hope I don't appear critical but rather just trying to help.