Update and deploy

This commit is contained in:
Yann Esposito (Yogsototh) 2021-05-26 07:58:35 +02:00
parent eca0cc19c7
commit 9ce3afee97
Signed by untrusted user who does not match committer: yogsototh
GPG Key ID: 7B19A4C650D59646
3 changed files with 19 additions and 11 deletions

6
engine/dev.sh Executable file
View File

@ -0,0 +1,6 @@
#!/bin/bash
set -e
tmux \
new-session './engine/serve.sh' \; \
split-window './engine/auto-build.sh' \;

View File

@ -1,6 +1,6 @@
html { html {
font-family: Georgia, serif; font-family: Georgia, serif;
font-size: 16px; font-size: 18px;
line-height: calc(1ex/0.37); line-height: calc(1ex/0.37);
} }
#TOC {text-align: left;} #TOC {text-align: left;}
@ -30,7 +30,7 @@ hr { opacity: 0.3; }
#preamble, #postamble { text-align: center; } #preamble, #postamble { text-align: center; }
#content,.content,#postamble { #content,.content,#postamble {
padding: 0 1rem; padding: 0 1rem;
max-width: 70ch; max-width: 62ch;
overflow: hidden; overflow: hidden;
margin: 0 auto; margin: 0 auto;
} }

View File

@ -1,4 +1,4 @@
#+TITLE: Efficient Static Site Build with make #+TITLE: Fast Static Site with make
#+DESCRIPTION: A deeper view of my static site builder Makefile #+DESCRIPTION: A deeper view of my static site builder Makefile
#+KEYWORDS: blog static #+KEYWORDS: blog static
#+AUTHOR: Yann Esposito #+AUTHOR: Yann Esposito
@ -15,19 +15,21 @@ Mainly it is very fast and portable.
A few goal reached by my current build system are: A few goal reached by my current build system are:
1. Source file format agnostic. You can use markdown, org-mode or even 1. Be fast, try to make as few work as possible.
I don't want to rebuild all the html pages if I only change one file.
2. Source file format agnostic. You can use markdown, org-mode or even
directly writing html. directly writing html.
2. Support gemini 3. Support gemini
3. Optimize size: minify HTML, CSS, images 4. Optimize size: minify HTML, CSS, images
4. Generate an index page listing the posts 5. Generate an index page listing the posts
5. Generate RSS/atom feed (for both gemini and http) 6. Generate RSS/atom feed (for both gemini and http)
So make will just take care of handling the dependency graph to minimize =make= will take care of handling the dependency graph to minimize
the amount of effort when a change occurs in the sources. the amount of effort when a change occurs in the sources.
But for some features, I built specifics tools. For some features, I built specifics small shell scripts.
For example to be absolutely agnostic in the source format for my articles For example to be absolutely agnostic in the source format for my articles
I generate the RSS out of a tree of HTML files. I generate the RSS out of a tree of HTML files.
But taking advantage of Make, I generate an index cache to transform those But taking advantage of =make=, I generate an index cache to transform those
HTML into XML which will be faster to use to build different indexes. HTML into XML which will be faster to use to build different indexes.
To make those transformations I use very short a shell scripts. To make those transformations I use very short a shell scripts.