I've followed this guide through almost exactly (the main deviation being that 'later' doesn't compile following the above without a change to its compile switches - see this GitHub issue for details: https://github.com/r-lib/later/issues/73).
I also haven't installed RStudio Server.
Testing on 127.0.0.1 demonstrates that NJinx is working.
I've placed a sample app in srv/shiny.
127.0.0.1:3838 or 127.0.0.1/shiny gets a 'this site cannot be reached' error.
However, sudo netstat -plunt | grep -i shiny suggests that shiny is not listening to port 3838. I have tried to recompile shiny following the instructions and looking for any errors - but I can't see that anything has gone wrong.
Does anyone have any suggestions what I may be missing or have gone wrong?
I can't reproduce your issue and once installed there shouldn't be any differente with a shiny-server installed on a regular Debian distribution, the first thing to try is to double check permissions for shiny user and srv/shiny-server folder.
I can't reproduce this either, on Raspbian Stretch I can install later with install.packages("later") without problems.
Is the key difference that I've used Raspbian Buster?
I have used a recent Raspbian image for the build mainly because whilst I'm doing the build on a Pi 3B+, I'm hoping to run it on a Pi 4 (when I've picked one up).
Yes, there is, my installation guide has not been tested on Buster and there are some differences, in this particular case I think your issue has to do with the fact that Buster comes with AppArmor enabled by default so I think you would have to create a profile for Nginx on "complain mode".