The code, templates and content for my Hakyll powered blog at blog.rekahsoft.ca
Go to file
Collin J. Doering 1ee07aab1f
Update terraform providers to the latest version
Signed-off-by: Collin J. Doering <collin@rekahsoft.ca>
2019-06-13 22:53:47 -04:00
clay
drafts
files Update gpg public key uids 2018-12-15 21:58:23 -05:00
fonts
images
images-src
infra Update terraform providers to the latest version 2019-06-13 22:53:47 -04:00
js
lib
pages
posts
src Update site script and hookup hakyll static file deploy 2018-12-15 21:58:18 -05:00
templates
.gitignore Update .gitignore 2018-12-15 21:58:25 -05:00
blog-rekahsoft-ca.cabal Remove test suite and update README.md 2018-12-15 21:58:21 -05:00
LICENSE
README.md Remove test suite and update README.md 2018-12-15 21:58:21 -05:00
robots.txt
Setup.hs
site Update site script and hookup hakyll static file deploy 2018-12-15 21:58:18 -05:00
stack.yaml

Source Code for #! Lambda Slang

#! Lambda Slang is the personal technical blog of Collin Doering, built using software that respects our freedoms.

Features

Tools

The creation of this website was made possible by the following open source tools and libraries:

  • Hakyll is used to generate site from static files
  • Clay is used for CSS pre-processing
  • Skeleton is used for CSS boilerplate
  • MathJax is used for rendering mathematics
  • Inkscape and the Gimp were used to create various images/artwork
  • Gnu Free Fonts, specifically FreeMono is used as main font
  • Gnu Emacs, because there is no place like home; and no greater editor!

License

Simply put, you're welcome to use the code used to generate this site though there are a few restrictions:

  • Any images and artwork that embody the likeness of "#! Lambda Slang" are not to be distributed or used and are strictly copyright
  • The content of pages and posts can be used with attribution, providing you aren't making money off of it

Various licenses (GPLv3, Creative Commons BY-NC-SA License, and Creative Commons BY-NC-ND License) are deployed dependent on which part of the site is in question. Please see the LICENSE file for full details.

Building

Stack is used to manage dependencies for this project. A simple wrapper script site is provided that also takes care of building the static site and offering access to hakyll commands.

$ ./site build
$ ./site watch

Deploying

Terraform is used to deploy this site. Its configuration files are located in ./infra. Three workspaces are currently available, including:

  • default (unused)
  • staging
  • production

For example, this is how to deploy the production version of the site:

$ cd infra
$ terraform workspace select production
$ terraform plan --var-file=production.tfvars --out local.plan
$ terraform apply local.plan

Issues

If you have an issue while browsing my blog please file a issue in the blog-rekahsoft-ca issue tracker.