2.4 KiB
Guix Packages Website
Summary
This is the GNU Guix package browser available at packages.guix.gnu.org. This software uses Artanis.
Basically, the software is currently organized as follows:
... ├── conf ├── ENTRY ├── gweb │ ├── aux.scm │ ├── builders.scm │ ├── data.scm │ ├── templates.scm │ ├── types.scm │ └── urls.scm ├── pub │ └── themes ├── test ...
The most important parts are these:
-
conf
- Artanis configuration.
-
ENTRY
- Artanis initialization and HTTP Request → HTTP Response associations.
-
(gweb builders)
- Procedures that build HTTP responses or the bodies of HTTP responses, using data and template procedures.
-
(gweb data)
- Procedures that retrieve data from different places or services.
-
(gweb templates)
- Procedures that take data and put it into HTML/XML/SVG/Etc documents or parts of them.
-
(gweb types)
- Custom data types.
-
(gweb urls)
- URL shorthands.
-
pub/themes
- Named collections of files that define the appearance of the software.
Running the website
To try out the website locally while you work on it, run the following commands:
cd path/to/guix-packages-website guix shell -CN -m manifest.scm export GUILE_LOAD_PATH="$GUILE_LOAD_PATH:$PWD" art work
Then, visit http://localhost:3000/ in a web browser.
You can stop the server pressing Ctrl + C
.
Running the test suite
Currently there is only unit tests. You can run them by module like this:
cd path/to/guix-packages-website export GUILE_LOAD_PATH="$GUILE_LOAD_PATH:$PWD" guile test/unit/templates.scm
Copying
Unless otherwise stated, all the files in this repository are placed in the public domain with the following note:
Public domain 2022 Luis Felipe López Acevedo. All rights waived.
The Guix logo (⋎) is licensed under the following terms:
Copyright © 2015 Luis Felipe López Acevedo
Permission is granted to copy, distribute and/or modify this work under the terms of the Creative Commons Attribution-ShareAlike 4.0 International License.