ID: notes.txt Tue Nov 7 21:06:09 EST 2006 ground/X Some brief notes on this package. You must extract the tar with the p option to preserve permissions You must extract the tar as root. You must extract the tar in to the /opt directory of the system. It will create a directory under /opt called viavoice-chroot. The directory /opt/viavoice-chroot/bin contains the wrapper scripts that can be used to launch viavoice. You may read them for more information about how this works. The chrootvv binary is statically linked and it must be setuid as root because only root can use the chroot system call. The chrootvv command is a hack of the chroot command from GNU coreutils. It does a chroot to /opt/viavoice-chroot/viavoice which is hard coded in the C file then immediately drops the root privileges. This looked secure to me but I don't know C and should not be writing SETUID programs. The syntax of chrootvv is a bit strange. check the example scripts. If you want to see what I did or compile your own version of chrootvv which would not need a static link check out the diff in this directory. It should apply to chroot.c of coreutils. You can recompile the entire package of coreutils and cp chroot to chrootvv in the /opt/viavoice-chroot/bin directory. If you want to change the location of this package eg move it from /opt/viavoice-chroot you will need to recompile chrootvv and edit most of the wrapper scripts.