HOWTO install s3_website on macOS

While converting my various websites to hugo static sites, I looked at various ways to push my local changes to production. Ultimately, I chose s3_website as the best choice for my setup. The tool is static site generator agnostic so works well with jekyll, middleman, hugo and others but in case you are curious, the tech stack I use is: hugo [static website generator] Amazon Web Servics (AWS) S3 for storage / web hosting Cloudfront for CDN Certificate Manager for TLS Route 53 for DNS (alias support) s3_website for deploys Installing s3_website on macOS Installing s3_website on macOS requires a few dependencies so I wanted to document them here for anyone else interested in using it.

Password Hints Can Be a Good Thing

As a general rule, I don’t like password hints. If the hint is any good, it would give an attacker additional info to crack your password. However, I had that sinking feel of dread the other day after I rebuilt a MacBook Pro, attached the TimeMachine backup drive and was prompted for the password. On the previous build of the computer, I must have entered the password, saved it to the keychain and forgot about it.

Diff for git submodules

If you are leveraging git submodule for Hugh themes and you are accustomed to using git diff to see what changes you made and totally forgot to commit, you will need to tweak your command for git submodules. By appending --submodule=diff you will see diffs for submodules as well: $ git diff --submodule=diff You can run this command at your top level repo and see all changes in that repo plus submodule(s) or cd into a specific submodule and see see the diffs for those changes only.

Configure git submodule for no password (ssh)

If you are leveraging git submodule for Hugh themes and you are accustomed to using git without passwords (via ssh urls), you’ll find that when you add a git submodule, it will be setup for “https urls” and thus prompt you for a password: $ git push origin master Username for 'https://github.com': This is obviously annoying but easy to fix. You can check the urls for your origin with git remote -v:

Using git submodule for Hugo themes

When I first started tinkering with Hugo for static website generation, I would find a Hugo theme that I like, cd into my themes directory and would simply git clone the repo into my website. This works, makes sense and is the most common install instructions from the theme authors. However, you will likely run into an issue where you want to make an edit to the theme only for your website.