summaryrefslogtreecommitdiffstats
path: root/site/cleopatra/Bootstrap.org
diff options
context:
space:
mode:
authorThomas Letan <lthms@soap.coffee>2020-02-26 21:43:49 +0100
committerThomas Letan <lthms@soap.coffee>2020-02-26 21:43:49 +0100
commitaf723a50dbdf1b70a25631f86f2a63c1d6ea533c (patch)
tree5b9e91ad3d811d656ae6767db5bfdd978489d812 /site/cleopatra/Bootstrap.org
parent5a8e9ac063b635fc0e4e0095890ac940a41d24c0 (diff)
Improving the end of the Bootstrapping cleopatra document
Diffstat (limited to 'site/cleopatra/Bootstrap.org')
-rw-r--r--site/cleopatra/Bootstrap.org40
1 files changed, 37 insertions, 3 deletions
diff --git a/site/cleopatra/Bootstrap.org b/site/cleopatra/Bootstrap.org
index 37124cb..67073a5 100644
--- a/site/cleopatra/Bootstrap.org
+++ b/site/cleopatra/Bootstrap.org
@@ -10,9 +10,9 @@ place both the software program and its technical documentation.
That being said, *~cleopatra~* is a toolchain to build a website before being a
literate program, and one of its objective is to be /part of this very website
it is used to generate/. To acheive this, *~cleopatra~* has been written as a
-collection of org files which can be either “tangled” using [[https://orgmode.org/worg/org-contrib/babel/][Babel]] or “exported”
-as a HTML document. Tangling here refers to extracted marked code blocks into
-files.
+collection of org files which can be either “tangled” using
+[[https://orgmode.org/worg/org-contrib/babel/][Babel]] or “exported” as a HTML
+document. Tangling here refers to extracted marked code blocks into files.
The page you are currently reading is *~cleopatra~* entry point. Its primilarly
purpose is to introduce two Makefiles: ~Makefile~ and ~bootstrap.mk~.
@@ -287,12 +287,46 @@ are currently used to generate the website you are reading.
*** Theming and Templating
+The [[./Theme.org][~theme~]] generation process controls the general appearance
+of the website. More precisely, it introduces the main template used by
+~soupault~ (~main/templates.html~), and the main SASS sheet used by this
+template.
+
+If a generation process produces a set of styles within a specific SASS files,
+the current approach is
+
+1. To make this file a dependency of ~theme-build~
+2. To modify ~style/main.sass~ in ~theme~
+ to import this file
+
+#+BEGIN_TODO
+Eventually, the second step will be automated, but in the meantime
+this customization is mandatory.
+#+END_TODO
+
#+BEGIN_SRC makefile :tangle bootstrap.mk :noweb tangle :exports none
<<extends(IN="Theme.org", PROC="theme", AUX="templates/main.html site/style/main.sass")>>
#+END_SRC
*** Configuring Soupault
+The [[./Soupault.org][~soupault~]] generation configures and run ~soupault~, in
+order to generate a static website.
+
+If a generation process ~proc~ produces files that will eventually be integrated to
+your website, its ~proc-build~ recipe needs to be executed /before/ the
+~soupault-build~ recipe. This can be enforced by making the dependency explicit
+to ~make~, /i.e./,
+
+#+BEGIN_SRC makefile
+soupault-build : proc-build
+#+END_SRC
+
+#+BEGIN_TODO
+Eventually, generation processes shall be allowed to produce specific ~soupault~
+widgets to be integrated into ~soupault.conf~.
+#+END_TODO
+
#+BEGIN_SRC makefile :tangle bootstrap.mk :noweb tangle :exports none
<<extends(IN="Soupault.org", PROC="soupault", AUX="soupault.conf plugins/urls-rewriting.lua plugins/external-urls.lua site/style/plugins.sass scripts/history.sh templates/history.html package.json scripts/katex.js")>>
#+END_SRC