How to specify a theme in _config.yml that's on local file system

Okay thanks.

Yeah even you are the only one who uses the theme and it’s a public repo, that is still fine.

Using S3 and CloudFront and copying to S3 is a rather manual deployment flow. Plus you have to deal with clearing cache on a deploy, and where to site gets built.

The modern flows make things easy. Check Jekyll docs Deployment | Jekyll • Simple, blog-aware, static sites

Netlify is amazing. You connect it to a public or private repo and specify a build command and build directory and it builds and deploys your site on every commit. No manual control over builds and S3 needed.

And GitHub Actions as well does something similar but needs a longer config.

Most of my sites use GitHub Pages and no build config. But GitHub takes care of Ruby and Jekyll and site building for me. No need to copy assets myself. Just push to GitHub and the site gets deployed.

You can also hook up your custom domain to GH Pages or Netlify at no cost.