From 4a2d3b587a527e5f3f508744b0483b0763bcd7ef Mon Sep 17 00:00:00 2001 From: sirgazil Date: Sat, 26 Nov 2016 15:06:07 -0500 Subject: website: Add instructions to build special pages. * README (Dependencies): Add GnuTLS, and GNU Guix source code. (Building and running special pages): New section. --- website/README | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/website/README b/website/README index f8dee4a..d5f6459 100644 --- a/website/README +++ b/website/README @@ -20,8 +20,18 @@ available at https://www.gnu.org/software/guix/. To be able to work on the website, you need the following software: - [[https://www.gnu.org/software/guile/][GNU Guile]] (programming language) + - [[https://gnutls.org/][GnuTLS]] (Transport Layer Security Library) - [[http://haunt.dthompson.us/][Haunt]] (static site generator) +Additionally, [[https://www.gnu.org/software/guix/][GNU Guix]] source code is needed to generate the +package-related pages of the website. You can clone the latest source +as follows: + +#+BEGIN_EXAMPLE +$ cd path/to/directory/of/your/choice +$ git clone git://git.savannah.gnu.org/guix.git +#+END_EXAMPLE + * Building and running To try out the website locally while you work on it, run the following @@ -35,6 +45,50 @@ $ haunt serve Then, visit http://localhost:8080/ in a web browser. +* Building and running special pages + +Currently, there are two pages, [[https://www.gnu.org/software/guix/packages][packages]] and [[https://www.gnu.org/software/guix/packages/issues.html][issues]], that are not +built using *Haunt*. To build them, and try them out locally, do the +following: + +1. Add the directory containing the source code of GNU Guix to the + ~PATH~ environment variable. +2. Build the part of the website that builds with *Haunt*: + + #+BEGIN_EXAMPLE + $ cd path/to/guix-artwork/website + $ GUIX_WEB_SITE_LOCAL=yes haunt build + #+END_EXAMPLE + +3. Copy the ~static~ directory to the build directory: + + #+BEGIN_EXAMPLE + $ mkdir -p site/software/guix + $ cp -avr static site/software/guix + #+END_EXAMPLE + +4. Open the [[https://www.gnu.org/software/guile/manual/html_node/The-REPL.html#The-REPL][Guile REPL]] to import the ~packages~ module and build + Packages and Issues pages: + + #+BEGIN_EXAMPLE + $ guile + scheme@(guile-user)> (use-modules (www) (www packages)) + scheme@(guile-user)> (export-web-page (packages-page) "site/packages/index.html") + scheme@(guile-user)> (export-web-page (issues-page) "site/packages/issues.html") + scheme@(guile-user)> ,q + #+END_EXAMPLE + +5. Serve the whole website with *Haunt*: + + #+BEGIN_EXAMPLE + $ haunt serve + #+END_EXAMPLE + +Now you can try the special pages out: + + - http://localhost:8080/packages/ + - http://localhost:8080/packages/issues.html + * Deploying Pending... -- cgit v1.2.3