2018-12-16 02:40:40 +00:00
|
|
|
# Source Code for **[#! Lambda Slang](http://www.blog.rekahsoft.ca)**
|
2015-01-09 11:17:37 +00:00
|
|
|
|
2015-06-24 05:29:37 +00:00
|
|
|
* [Features](#features)
|
|
|
|
* [Tools](#tools)
|
|
|
|
* [License](#license)
|
|
|
|
* [Building](#building)
|
2017-04-24 02:22:38 +00:00
|
|
|
* [Deploying](#deploying)
|
2015-06-24 05:29:37 +00:00
|
|
|
* [Issues](#issues)
|
|
|
|
|
2018-12-16 02:40:40 +00:00
|
|
|
[#! Lambda Slang](http://www.blog.rekahsoft.ca) is the personal technical blog of *Collin Doering*,
|
2015-01-09 11:17:37 +00:00
|
|
|
built using software that [respects our freedoms](https://www.gnu.org/philosophy/free-sw.html).
|
|
|
|
|
2015-06-24 05:29:37 +00:00
|
|
|
## Features <a name="features"></a>
|
2015-01-25 06:01:29 +00:00
|
|
|
|
|
|
|
* [Single Page Application (SPA)](http://en.wikipedia.org/wiki/Single-page_application)
|
|
|
|
* Utilizes CSS 3
|
|
|
|
* Uses HTML5 Application Cache for offline viewing of website
|
|
|
|
|
2015-06-24 05:29:37 +00:00
|
|
|
## Tools <a name="tools"></a>
|
2015-01-25 06:01:29 +00:00
|
|
|
|
|
|
|
The creation of this website was made possible by the following open source tools and libraries:
|
2015-01-09 11:17:37 +00:00
|
|
|
|
2015-06-24 05:29:37 +00:00
|
|
|
* [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
|
2015-01-25 06:01:29 +00:00
|
|
|
* [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!
|
2015-01-09 11:17:37 +00:00
|
|
|
|
2015-06-24 05:29:37 +00:00
|
|
|
## License <a name="license"></a>
|
2015-01-09 11:17:37 +00:00
|
|
|
|
|
|
|
Simply put, you're welcome to use the code used to generate this site though there are a few restrictions:
|
|
|
|
|
2016-01-17 10:38:21 +00:00
|
|
|
* Any images and artwork that embody the likeness of "#! Lambda Slang" are not to be distributed or
|
2015-01-09 11:17:37 +00:00
|
|
|
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
|
|
|
|
|
2015-01-25 06:01:29 +00:00
|
|
|
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.
|
2015-01-09 11:17:37 +00:00
|
|
|
|
2015-06-24 05:29:37 +00:00
|
|
|
## Building <a name="building"></a>
|
2015-01-09 11:17:37 +00:00
|
|
|
|
2018-12-16 02:40:40 +00:00
|
|
|
[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.
|
2015-01-09 11:17:37 +00:00
|
|
|
|
2018-12-16 02:40:40 +00:00
|
|
|
$ ./site build
|
|
|
|
$ ./site watch
|
2015-06-24 05:29:37 +00:00
|
|
|
|
2017-04-24 02:22:38 +00:00
|
|
|
## Deploying <a name="deploying"></a>
|
|
|
|
|
2018-12-08 18:29:59 +00:00
|
|
|
Terraform is used to deploy this site. Its configuration files are located in `./infra`. Three
|
|
|
|
workspaces are currently available, including:
|
2017-04-24 02:22:38 +00:00
|
|
|
|
2018-12-08 18:29:59 +00:00
|
|
|
- default (unused)
|
|
|
|
- staging
|
|
|
|
- production
|
2017-04-24 02:22:38 +00:00
|
|
|
|
2018-12-08 18:29:59 +00:00
|
|
|
For example, this is how to deploy the production version of the site:
|
2017-04-24 02:22:38 +00:00
|
|
|
|
2018-12-08 18:29:59 +00:00
|
|
|
$ cd infra
|
|
|
|
$ terraform workspace select production
|
|
|
|
$ terraform plan --var-file=production.tfvars --out local.plan
|
|
|
|
$ terraform apply local.plan
|
2017-04-24 02:22:38 +00:00
|
|
|
|
2015-06-24 05:29:37 +00:00
|
|
|
## Issues <a name="issues"></a>
|
|
|
|
|
2018-12-16 02:40:40 +00:00
|
|
|
If you have an issue while browsing [my blog](http://www.blog.rekahsoft.ca) please file a issue
|
|
|
|
in the [blog-rekahsoft-ca](https://git.rekahsoft.ca/rekahsoft/blog-rekahsoft-ca/issues) issue
|
|
|
|
tracker.
|
2015-07-03 06:29:50 +00:00
|
|
|
|
2015-01-09 11:17:37 +00:00
|
|
|
[Hakyll]: http://jaspervdj.be/hakyll/
|
|
|
|
[Clay]: http://fvisser.nl/clay/
|
|
|
|
[Skeleton]: http://www.getskeleton.com/
|
|
|
|
[JQuery]: http://jquery.com
|
|
|
|
[JQuery-address]: https://github.com/asual/jquery-address
|
|
|
|
[MathJax]: http://www.mathjax.org/
|
|
|
|
[Inkscape]: http://inkscape.org/
|
|
|
|
[Gimp]: http://www.gimp.org/
|
2018-12-16 02:40:40 +00:00
|
|
|
[Stack]: https://haskellstack.org
|
2015-01-09 11:17:37 +00:00
|
|
|
[Gnu Emacs]: http://www.gnu.org/software/emacs/
|
|
|
|
[Gnu Free Fonts]: http://www.gnu.org/software/freefont/
|
|
|
|
|
|
|
|
[GPLv3]: https://www.gnu.org/licenses/gpl.html
|
2015-01-25 06:01:29 +00:00
|
|
|
[Creative Commons BY-NC-SA License]: http://creativecommons.org/licenses/by-nc-sa/4.0/
|
2015-01-09 11:17:37 +00:00
|
|
|
[Creative Commons BY-NC-ND License]: http://creativecommons.org/licenses/by-nc-nd/4.0/
|