this blog post mentions getting read-write access by using an undocumented feature of the application runner to put the package root on an NFS mount, and create a symlink to / inside the NFS directory. since symlinks on NFS mounts get resolved on the client instead of the server, it should create a link to / through which any file on the machine can be read/written.
i don't know what version of the roku system software the author had, but the version i have allows two upload formats, zip and squashfs. if i upload a squashfs containing a symlink to /, it appears in `roFileSystem.getDirectoryListing("pkg:/")`, but i can't list it, and `roFileSystem.stat("pkg:/root")` returns an empty roAssociativeArray, the same as for a nonexistent file. so i think the symlink is broken.
i'm still trying to figure out how to do the NFS thing.