guix-artwork/website/README

112 lines
3.6 KiB
Org Mode

-*- mode: org -*-
#+TITLE: Guix website
The Guix website available at https://www.gnu.org/software/guix/ is
a static website built with [[https://dthompson.us/projects/haunt.html][Haunt]]. This directory contains the source
files of the website.
* Development environment
This website is developed using the [[https://www.gnu.org/software/guix/download/][GNU Guix]] package manager. Run the
following command to install all the software needed to build the
website:
#+BEGIN_EXAMPLE
guix package -m manifest.scm
#+END_EXAMPLE
*Note*: the packages =guix= and =haunt= should have the same version of Guile,
otherwise building the website is slow and raises bunch of warnings. The
manifest file takes care.
* Running the website
To try out the website locally while you work on it, run the following
commands:
#+BEGIN_EXAMPLE
cd path/to/guix-artwork/website
#+END_EXAMPLE
** Build locally
#+begin_example
LANG=en_US.UTF-8 GUIX_WEB_SITE_LOCAL=yes guix environment -C -m manifest.scm \
-E LANG -E GUIX_WEB_SITE_LOCAL --share=/tmp \
-- haunt build
#+end_example
Any other value than =GUIX_WEB_SITE_LOCAL=yes= will build the full website
considering all the packages and not a small subset. Note that the final
website is built using the following command:
#+begin_example
guix build -f .guix.scm
#+end_example
** Serve locally
#+begin_example
LANG=en_US.UTF-8 guix environment -CN -m manifest.scm \
-E LANG --share=/tmp \
-- haunt serve -w
#+end_example
Then, visit http://localhost:8080/en/guix.html in a web browser.
You can stop the server pressing ~Ctrl + C~ twice.
See also the file i18n-howto.txt for information on working with
translations.
* Deploying
Like the pages of many GNU websites, this website is managed through
Savannah CVS. To deploy the website it should be copied to the CVS
tree and then checked in. The website will be updated automatically
once the files have been checked into CVS.
See https://savannah.gnu.org/cvs/?group=guix for information on how to
access Savannah CVS.
* Adding videos
To add more videos to the list in https://guix.gnu.org/en/videos/, do
the following:
1. Add new video or playlist records to the =videos= list defined in the =(apps media data)= module. Also add video tracks (subtitles and
captions) if available. The Video, Playlist and Track data types
are documented in the =(apps media types)= module.
2. For every new video, add the following files to the =website/static/media/videos/YYYY= directory, where =YYYY= is the
year of publication of the video:
1. A poster image of the video, =SLUG.webp=, where =SLUG= is the
slug of the video defined in step 1.
2. A 250x141 px miniature image based on the poster and called =SLUG.mini.webp=.
3. Any subtitles and close caption files named using the format =SLUG-KIND.LANG.vtt=, where =SLUG= is the slug of the video, and =KIND= and =LANG= are the values of those attributes in the
track record(s) defined for the video in step 1.
3. Run the website and check that the videos are displayed correctly.
* Copying
** Guile code
See [[file:COPYING][COPYING]].
** Graphics
Public domain 2015 Luis Felipe López Acevedo
All the graphics in this directory are dedicated to the public domain, except
for the Guix System Distribution logo, which can be used under the Creative
Commons Attribution-ShareAlike 4.0 International License.
You can find information about authors and copyright in the metadata of SVG
files. If you are using Inkscape, you can access the Document metadata from
the File menu.