>From 4763ec6706b9f5088b00f3b99f4e3eca57b05d8a Mon Sep 17 00:00:00 2001 From: Mathieu Lirzin Date: Fri, 8 May 2015 00:06:03 +0200 Subject: [PATCH 2/3] website: Factorize shared blocks. --- website/www.scm | 478 ++++++++++++++++++++------------------------- website/www/about.scm | 306 ++++++++++++----------------- website/www/contribute.scm | 370 +++++++++++++++-------------------- website/www/donate.scm | 197 +++++++------------ website/www/download.scm | 303 ++++++++++++---------------- website/www/help.scm | 410 +++++++++++++++++--------------------- website/www/packages.scm | 93 ++------- website/www/shared.scm | 65 ++++++ 8 files changed, 932 insertions(+), 1290 deletions(-) create mode 100644 website/www/shared.scm diff --git a/website/www.scm b/website/www.scm index 2949102..36d7ee7 100644 --- a/website/www.scm +++ b/website/www.scm @@ -1,4 +1,5 @@ (define-module (www) + #:use-module (www shared) #:use-module (www packages) #:use-module (www download) #:use-module (www donate) @@ -14,281 +15,216 @@ export-web-site)) (define main-page - '(html (@ (lange "en")) - (head (meta (@ (charset "utf-8"))) - (meta (@ (name "author") - (content "GuixSD Contributors"))) - (meta (@ (name "description") - (content - "GuixSD is GNU's advanced system -distribution. GNU is an operating system which respects the freedom of -computer users. You are free to run the system for any purpose, study -how it works, improve it, and share it with the whole world."))) - (meta (@ (name "keywords") - (content - "GNU, FSF, Free Software Foundation, Linux, -Emacs, GCC, Unix, Free Software, Libre Software, Operating System, GNU -Kernel, GNU Hurd, GUix Package Manager, Guile Scheme, Functional -package management"))) - (meta (@ (name "viewport") - (content "width=device-width, initial-scale=1.0"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/base.css"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/index.css"))) - (link (@ (type "image/png") - (rel "icon") - (href "/software/guix/static/base/img/favicon.png"))) - (link (@ (rel "license") (href "Pending..."))) - (title "Home - GuixSD")) - (body (div (@ (class "message-box msg-info")) - (span (@ (class "msg-label")) "Note") - "The Guix System Distribution (GuixSD) is alpha -software. This means it is not production-ready. It may contain bugs -and lack important features. But more than a disclaimer, this is an -invitation to join us in improving it. See " - (a (@ (href "/software/guix/contribute/")) - "Contributing") - ", for more information. We hope you can soon -switch to GuixSD without fear. ") - (div (@ (id "header-box")) - (a (@ (id "logo") (href "/software/guix/")) - (img (@ (src "/software/guix/static/base/img/GuixSD-logo.png") - (alt "GuixSD")))) - (ul (@ (id "site-nav")) - (li (a (@ (href "/software/guix/download/")) - "Download")) - (li (a (@ (href "/software/guix/package-list.html")) - "Packages")) - (li (a (@ (href "/software/guix/help/")) "Help")) - (li (a (@ (href "/software/guix/contribute/")) - "Contribute")) - (li (a (@ (href "/software/guix/donate/")) - "Donate")) - (li (a (@ (href "/software/guix/about/")) - "About")))) - (div (@ (id "content-box")) - (div (@ (id "featured-box")) - (div (@ (class "featured-content")) - (h1 (@ (class "featured-heading")) - "The Guix System Distribution") - (ul (li (b "Liberating.") - " GuixSD is an advanced distribution of the " - (a (@ (href "https://gnu.org/") - (class "hlink-yellow")) - "GNU Operating System") - " developed by the " - (a (@ (href "https://gnu.org/") - (class "hlink-yellow")) - "GNU Project ") - "—which respects the " - (a (@ (href "http://www.gnu.org/philosophy/free-sw.html") - (class "hlink-yellow")) - "freedom of computer users") - ". ") - (li (b "Dependable.") - " The " - (a (@ (href "/software/guix/manual/") - (class "hlink-yellow")) - "GNU Guix") - " Package Manager, in addition -to standard package management features, supports transactional -upgrades and roll-backs, unprivileged package management, per-user -profiles, and garbage collection.") - (li (b "Hackable.") - " It provides " - (a (@ (href "https://www.gnu.org/s/guile/") - (class "hlink-yellow")) - "Guile Scheme") - " APIs, including high-level -embedded domain-specific languages (EDSLs), to describe how packages -are built and composed.")) - (div (@ (class "featured-actions")) - (a (@ (href "/software/guix/download/") - (class "action download")) - "TEST v0.8.2 (alpha)") - (a (@ (href "/software/guix/contribute/") - (class "action contribute")) - "CONTRIBUTE")))) - (div (@ (id "discovery-box")) - (h2 "Discover GuixSD") - (div (@ (class "info-box text-center")) - (video (@ (src "http://audio-video.gnu.org/video/misc/2015-01__GNU_Guix__The_Emacs_of_Distros.webm") - (poster - "/software/guix/static/base/img/the-emacs-of-distros.png") - (controls "controls") - (class "video-preview"))) - (p "January 2015, The Emacs of -Distros (48 minutes)") - (p (a (@ (href "/software/guix/help/#talks") - (class "hlink-more-light")) - "Check all talks"))) - (div (@ (class "info-box text-left")) - (p (a (@ (href "/software/guix/manual/") + `(html (@ (lang "en")) + ,(html-page-header "Home") + (body + ,(html-page-description) + ,(html-page-links) + (div (@ (id "content-box")) + (div (@ (id "featured-box")) + (div (@ (class "featured-content")) + (h1 (@ (class "featured-heading")) + "The Guix System Distribution") + (ul (li (b "Liberating.") + " GuixSD is an advanced distribution of the " + (a (@ (href "https://gnu.org/") (class "hlink-yellow")) - "GNU Guix Documentation") - (br) - "You may also find more information -about GNU Guix by running info guix.") - (p (a (@ (href "http://arxiv.org/abs/1305.4584") + "GNU Operating System") + " developed by the " + (a (@ (href "https://gnu.org/") (class "hlink-yellow")) - " Functional Package Management with Guix") - (br) - "A paper presented at the 2013 -European Lisp Symposium (ELS), describes the rationale, design, and -implementation of Guix's packaging API. ") - (p (a (@ (href "http://www.gnu.org/manual/") + "GNU Project ") + "—which respects the " + (a (@ (href "http://www.gnu.org/philosophy/free-sw.html") (class "hlink-yellow")) - "GNU Manuals Online") - (br) - "Primary documentation for official -GNU packages.") - (p (a (@ (href "/software/guix/help/") - (class "hlink-more-light")) - "Find more documentation"))) - (img (@ (src "/software/guix/static/base/img/h-separator-darker.png") - (class "h-separator") - (alt ""))) - (div (@ (id "screens-box")) - (a (@ (href "/software/guix/screenshots/0.8.2/grub-menu.png")) - (img (@ (src "/software/guix/static/base/img/screenshots/grub-menu-thumb.png") - (class "screenshot-thumb") - (alt "GRUB menu")))) - (a (@ (href "/software/guix/screenshots/0.8.2/slim.png")) - (img (@ (src "/software/guix/static/base/img/screenshots/slim-thumb.png") - (class "screenshot-thumb") - (alt "Slim login manager")))) - (a (@ (href "/software/guix/screenshots/0.8.2/windowmaker+icecat+inkscape.png")) - (img (@ (src "/software/guix/static/base/img/screenshots/windowmaker+icecat+inkscape-thumb.png") - (class "screenshot-thumb") - (alt "Windowmaker, Icecat, and Inkscape")))) - (a (@ (href "/software/guix/screenshots/0.8.2/user-interfaces.png")) - (img (@ (src "/software/guix/static/base/img/screenshots/user-interfaces-thumb.png") - (class "screenshot-thumb") - (alt "mplayer and xterm")))) - (a (@ (href "/software/guix/screenshots/0.8.2/emacs-ui-packages.png")) - (img (@ (src "/software/guix/static/base/img/screenshots/emacs-ui-packages-thumb.png") - (class "screenshot-thumb") - (alt "Emacs user interface to the package manager.")))) - (a (@ (href "/software/guix/screenshots/0.8.2/emacs-ui-generations.png")) - (img (@ (src "/software/guix/static/base/img/screenshots/emacs-ui-generations-thumb.png") - (class "screenshot-thumb") - (alt "Emacs user interface generations."))))) - (p (a (@ (href "/software/guix/contribute/") - (class "hlink-yellow-boxed")) - "Help us package more software →"))) - (div (@ (id "news-box")) - (h2 "News") - (a (@ (href "http://www.fsf.org/news/fsf-adds-guix-system-distribution-to-list-of-endorsed-distributions") - (class "news-entry")) - (h4 "FSF adds Guix System Distribution to -list of endorsed distributions") - (p (@ (class "news-date")) "February 3, 2015") - (p (@ (class "news-summary")) - "The Guix System Distribution is a new -and growing distro that currently ships with just over 1000 packages, -already including almost all of the programs available from the GNU -Project...")) - (a (@ (href "https://savannah.gnu.org/forum/forum.php?forum_id=8193") - (class "news-entry")) - (h4 "GNU Guix 0.8.1 Released") - (p (@ (class "news-date")) "January 29, 2015") - (p (@ (class "news-summary")) - "We are pleased to announce the next -alpha release of GNU Guix, version 0.8.1. The release comes both with -a source tarball, which allows you to install it on top of a running -GNU/Linux system, and a USB installation image to install the -standalone Guix System...")) - (a (@ (href "https://savannah.gnu.org/forum/forum.php?forum_id=8191") - (class "news-entry")) - (h4 "GNU Guix at FOSDEM") - (p (@ (class "news-date")) "January 27, 2015") - (p (@ (class "news-summary")) - "Guix will be present at FOSDEM in -Brussels, Belgium, with a talk entitled \"The Emacs of Distros\" this -Saturday, at 3PM, in room H.1302. The talk will give an update on -developments in Guix and the Guix System Distribution since last -year...")) - (p (a (@ (href "https://savannah.gnu.org/news/?group=guix") - (class "hlink-more-dark")) - "More news"))) - (div (@ (id "contact-box")) - (h2 "Contact") - (div (@ (class "info-box text-justify")) - (h3 "IRC Channel") - (p "Some Guix users and developers hang -out on the #guix channel of the Freenode IRC network. " - (small "(See " - (a (@ (href "https://gnunet.org/bot/log/guix/")) - "channel logs") - ")") - ".") - (p (@ (class "text-right")) - (a (@ (href "http://webchat.freenode.net/?channels=%23guix") - (class "button btn-blue")) - "Connect")) - (h3 "Report Bugs") - (p "Use the bugs mailing list to report -bugs. Please check whether the bug is already in the " - (a (@ (href "http://debbugs.gnu.org/cgi/pkgreport.cgi?pkg=guix")) - "bug database") - ".") - (p (@ (class "text-right")) - (a (@ (href "mailto:address@hidden") - (class "button btn-red")) - "Report"))) - (div (@ (class "info-box text-left")) - (h3 "Mailing Lists") - (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/guix-devel")) - (b "guix-devel")) - (small " (" - (a (@ (href "https://lists.gnu.org/archive/html/guix-devel")) - "archive") - ")") - (br) - "Discussion about the development of -GNU Guix and the Guix System Distribution (GuixSD).") - (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/bug-guix")) - (b "bug-guix")) - (small " (" - (a (@ (href "https://lists.gnu.org/archive/html/bug-guix")) - "archive") - ")") - (br) - "Bug reports for GNU Guix and the -Guix System Distribution.") - (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/gnu-system-discuss")) - (b "gnu-system-discuss")) - (small " ( " - (a (@ (href "http://lists.gnu.org/archive/html/gnu-system-discuss/")) - "archive") - ")") - (br) - "Discussion about the development of + "freedom of computer users") + ". ") + (li (b "Dependable.") + " The " + (a (@ (href "/software/guix/manual/") + (class "hlink-yellow")) + "GNU Guix") + " Package Manager, in addition to standard +package management features, supports transactional upgrades and roll-backs, +unprivileged package management, per-user profiles, and garbage collection.") + (li (b "Hackable.") + " It provides " + (a (@ (href "https://www.gnu.org/s/guile/") + (class "hlink-yellow")) + "Guile Scheme") + " APIs, including high-level embedded +domain-specific languages (EDSLs), to describe how packages are built and +composed.")) + (div (@ (class "featured-actions")) + (a (@ (href "/software/guix/download/") + (class "action download")) + "TEST v0.8.2 (alpha)") + (a (@ (href "/software/guix/contribute/") + (class "action contribute")) + "CONTRIBUTE")))) + (div (@ (id "discovery-box")) + (h2 "Discover GuixSD") + (div (@ (class "info-box text-center")) + (video (@ (src "http://audio-video.gnu.org/video/misc/2015-01__GNU_Guix__The_Emacs_of_Distros.webm") + (poster + "/software/guix/static/base/img/the-emacs-of-distros.png") + (controls "controls") + (class "video-preview"))) + (p "January 2015, The Emacs of Distros (48 minutes)") + (p (a (@ (href "/software/guix/help/#talks") + (class "hlink-more-light")) + "Check all talks"))) + (div (@ (class "info-box text-left")) + (p (a (@ (href "/software/guix/manual/") + (class "hlink-yellow")) + "GNU Guix Documentation") + (br) + "You may also find more information about GNU Guix +by running info guix.") + (p (a (@ (href "http://arxiv.org/abs/1305.4584") + (class "hlink-yellow")) + "Functional Package Management with Guix") + (br) + "A paper presented at the 2013 European Lisp +Symposium (ELS), describes the rationale, design, and implementation of Guix's +packaging API. ") + (p (a (@ (href "http://www.gnu.org/manual/") + (class "hlink-yellow")) + "GNU Manuals Online") + (br) + "Primary documentation for official GNU packages.") + (p (a (@ (href "/software/guix/help/") + (class "hlink-more-light")) + "Find more documentation"))) + (img (@ (src "/software/guix/static/base/img/h-separator-darker.png") + (class "h-separator") + (alt ""))) + (div (@ (id "screens-box")) + (a (@ (href "/software/guix/screenshots/0.8.2/grub-menu.png")) + (img (@ (src "/software/guix/static/base/img/screenshots/grub-menu-thumb.png") + (class "screenshot-thumb") + (alt "GRUB menu")))) + (a (@ (href "/software/guix/screenshots/0.8.2/slim.png")) + (img (@ (src "/software/guix/static/base/img/screenshots/slim-thumb.png") + (class "screenshot-thumb") + (alt "Slim login manager")))) + (a (@ (href "/software/guix/screenshots/0.8.2/windowmaker+icecat+inkscape.png")) + (img (@ (src "/software/guix/static/base/img/screenshots/windowmaker+icecat+inkscape-thumb.png") + (class "screenshot-thumb") + (alt "Windowmaker, Icecat, and Inkscape")))) + (a (@ (href "/software/guix/screenshots/0.8.2/user-interfaces.png")) + (img (@ (src "/software/guix/static/base/img/screenshots/user-interfaces-thumb.png") + (class "screenshot-thumb") + (alt "mplayer and xterm")))) + (a (@ (href "/software/guix/screenshots/0.8.2/emacs-ui-packages.png")) + (img (@ (src "/software/guix/static/base/img/screenshots/emacs-ui-packages-thumb.png") + (class "screenshot-thumb") + (alt "Emacs user interface to the package manager.")))) + (a (@ (href "/software/guix/screenshots/0.8.2/emacs-ui-generations.png")) + (img (@ (src "/software/guix/static/base/img/screenshots/emacs-ui-generations-thumb.png") + (class "screenshot-thumb") + (alt "Emacs user interface generations."))))) + (p (a (@ (href "/software/guix/contribute/") + (class "hlink-yellow-boxed")) + "Help us package more software →"))) + (div (@ (id "news-box")) + (h2 "News") + (a (@ (href "http://www.fsf.org/news/fsf-adds-guix-system-distribution-to-list-of-endorsed-distributions") + (class "news-entry")) + (h4 "FSF adds Guix System Distribution to list of +endorsed distributions") + (p (@ (class "news-date")) "February 3, 2015") + (p (@ (class "news-summary")) + "The Guix System Distribution is a new and growing +distro that currently ships with just over 1000 packages, already including +almost all of the programs available from the GNU Project...")) + (a (@ (href "https://savannah.gnu.org/forum/forum.php?forum_id=8193") + (class "news-entry")) + (h4 "GNU Guix 0.8.1 Released") + (p (@ (class "news-date")) "January 29, 2015") + (p (@ (class "news-summary")) + "We are pleased to announce the next alpha release of +GNU Guix, version 0.8.1. The release comes both with a source tarball, which +allows you to install it on top of a running GNU/Linux system, and a USB +installation image to install the standalone Guix System...")) + (a (@ (href "https://savannah.gnu.org/forum/forum.php?forum_id=8191") + (class "news-entry")) + (h4 "GNU Guix at FOSDEM") + (p (@ (class "news-date")) "January 27, 2015") + (p (@ (class "news-summary")) + "Guix will be present at FOSDEM in Brussels, Belgium, +with a talk entitled \"The Emacs of Distros\" this Saturday, at 3PM, in room +H.1302. The talk will give an update on developments in Guix and the Guix System +Distribution since last year...")) + (p (a (@ (href "https://savannah.gnu.org/news/?group=guix") + (class "hlink-more-dark")) + "More news"))) + (div (@ (id "contact-box")) + (h2 "Contact") + (div (@ (class "info-box text-justify")) + (h3 "IRC Channel") + (p "Some Guix users and developers hang out on the +#guix channel of the Freenode IRC network. " + (small "(See " + (a (@ (href "https://gnunet.org/bot/log/guix/")) + "channel logs") + ")") + ".") + (p (@ (class "text-right")) + (a (@ (href "http://webchat.freenode.net/?channels=%23guix") + (class "button btn-blue")) + "Connect")) + (h3 "Report Bugs") + (p "Use the bugs mailing list to report bugs. Please +check whether the bug is already in the " + (a (@ (href "http://debbugs.gnu.org/cgi/pkgreport.cgi?pkg=guix")) + "bug database") + ".") + (p (@ (class "text-right")) + (a (@ (href "mailto:address@hidden") + (class "button btn-red")) + "Report"))) + (div (@ (class "info-box text-left")) + (h3 "Mailing Lists") + (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/guix-devel")) + (b "guix-devel")) + (small " (" + (a (@ (href "https://lists.gnu.org/archive/html/guix-devel")) + "archive") + ")") + (br) + "Discussion about the development of GNU Guix and +the Guix System Distribution (GuixSD).") + (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/bug-guix")) + (b "bug-guix")) + (small " (" + (a (@ (href "https://lists.gnu.org/archive/html/bug-guix")) + "archive") + ")") + (br) + "Bug reports for GNU Guix and the Guix System +Distribution.") + (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/gnu-system-discuss")) + (b "gnu-system-discuss")) + (small " ( " + (a (@ (href "http://lists.gnu.org/archive/html/gnu-system-discuss/")) + "archive") + ")") + (br) + "Discussion about the development of the broader GNU system.") - (p (a (@ (href "https://lists.nongnu.org/mailman/listinfo/gnu-linux-libre")) - (b "gnu-linux-libre")) - (small " (" - (a (@ (href "http://lists.nongnu.org/archive/html/gnu-linux-libre/")) - "archive") - ")") - (br) - "Workgroup for fully free GNU/Linux -distributions.") - (p (a (@ (href "https://savannah.gnu.org/mail/?group=guix") - (class "hlink-more-dark")) - "Find all the available -lists"))))) - (div (@ (id "footer-box")) - "copyleft 2015 GuixSD" - (a (@ (href "/software/guix/contribute/") - (class "hlink-yellow")) - " Contributors") - ". Made with " - (span (@ (class "metta")) "♥") - " by humans.")))) + (p (a (@ (href "https://lists.nongnu.org/mailman/listinfo/gnu-linux-libre")) + (b "gnu-linux-libre")) + (small " (" + (a (@ (href "http://lists.nongnu.org/archive/html/gnu-linux-libre/")) + "archive") + ")") + (br) + "Workgroup for fully free GNU/Linux distributions.") + (p (a (@ (href "https://savannah.gnu.org/mail/?group=guix") + (class "hlink-more-dark")) + "Find all the available lists"))))) + ,(html-page-footer)))) ;;; diff --git a/website/www/about.scm b/website/www/about.scm index bc964c9..128041d 100644 --- a/website/www/about.scm +++ b/website/www/about.scm @@ -1,189 +1,127 @@ (define-module (www about) + #:use-module (www shared) #:export (about-page)) (define about-page - '(html (@ (lang "en")) - (head (meta (@ (charset "utf-8"))) - (meta (@ (name "author") - (content "GuixSD Contributors"))) - (meta (@ (name "description") - (content - "GuixSD is GNU's advanced system -distribution. GNU is an operating system which respects the freedom of -computer users. You are free to run the system for any purpose, study -how it works, improve it, and share it with the whole world."))) - (meta (@ (name "keywords") - (content - "GNU, FSF, Free Software Foundation, Linux, -Emacs, GCC, Unix, Free Software, Libre Software, Operating System, GNU -Kernel, GNU Hurd, GUix Package Manager, Guile Scheme, Functional -package management"))) - (meta (@ (name "viewport") - (content "width=device-width, initial-scale=1.0"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/base.css"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/article.css"))) - (link (@ (type "image/png") - (rel "icon") - (href "/software/guix/static/base/img/favicon.png"))) - (link (@ (rel "license") (href "Pending..."))) - (title "About - GuixSD")) - (body (div (@ (class "message-box msg-info")) - (span (@ (class "msg-label")) "Note") - "The Guix System Distribution (GuixSD) is alpha -software. This means it is not production-ready. It may contain bugs -and lack important features. But more than a disclaimer, this is an -invitation to join us in improving it. See " - (a (@ (href "/software/guix/contribute/")) - "Contributing") - ", for more information. We hope you can soon -switch to GuixSD without fear. ") - (div (@ (id "header-box")) - (a (@ (id "logo") (href "/software/guix/")) - (img (@ (src "/software/guix/static/base/img/GuixSD-logo.png") - (alt "GuixSD")))) - (ul (@ (id "site-nav")) - (li (a (@ (href "/software/guix/download/")) - "Download")) - (li (a (@ (href "/software/guix/package-list.html")) - "Packages")) - (li (a (@ (href "/software/guix/help/")) "Help")) - (li (a (@ (href "/software/guix/contribute/")) - "Contribute")) - (li (a (@ (href "/software/guix/donate/")) - "Donate")) - (li (a (@ (href "/software/guix/about/")) - "About")))) - (div (@ (id "content-box")) - (article - (h1 "About the Project") - (p "The " - (em "Guix System Distribution (GuixSD)") - " and the " - (em "GNU Guix") - " package manager are free software projects -developed by the " - (a (@ (href "http://www.gnu.org/")) - "GNU Project") - " and independent volunteers from various -parts of the world. This is the official website for both projects. ") - (blockquote - (p (strong - "Free software means the users have the -freedom to run, copy, distribute, study, change and improve the -software.")) - (p "Free software is a matter of liberty, not -price. To understand the concept, you should think of \"free\" as in -\"free speech\", not as in \"free beer\". ") - (p "More precisely, free software means users of -a program have the " - (a (@ (href "/philosophy/free-sw.html")) - "four essential freedoms") - ":") - (ul (li "The freedom to run the program as you -wish, for any purpose (freedom 0).") - (li "The freedom to study how the program -works, and adapt it to your needs (freedom 1). Access to the source -code is a precondition for this.") - (li "The freedom to redistribute copies so -you can help your neighbor (freedom 2).") - (li "The freedom to improve the program, and -release your improvements to the public, so that the whole community -benefits (freedom 3). Access to the source code is a precondition for -this.")) - (p "\xa0gnu.org")) - (h2 (@ (id "mantainer")) "Maintainer") - (p "Guix is currently being maintained by Ludovic + `(html (@ (lang "en")) + ,(html-page-header "About") + (body + ,(html-page-description) + ,(html-page-links) + (div (@ (id "content-box")) + (article + (h1 "About the Project") + (p "The " + (em "Guix System Distribution (GuixSD)") + " and the " + (em "GNU Guix") + " package manager are free software projects developed by +the " + (a (@ (href "http://www.gnu.org/")) + "GNU Project") + " and independent volunteers from various parts of the +world. This is the official website for both projects. ") + (blockquote + (p (strong + "Free software means the users have the freedom to run, +copy, distribute, study, change and improve the software.")) + (p "Free software is a matter of liberty, not price. To +understand the concept, you should think of \"free\" as in \"free speech\", not +as in \"free beer\". ") + (p "More precisely, free software means users of a program have +the " + (a (@ (href "/philosophy/free-sw.html")) + "four essential freedoms") + ":") + (ul (li "The freedom to run the program as you wish, for any +purpose (freedom 0).") + (li "The freedom to study how the program works, and adapt +it to your needs (freedom 1). Access to the source code is a precondition for +this.") + (li "The freedom to redistribute copies so you can help +your neighbor (freedom 2).") + (li "The freedom to improve the program, and release your +improvements to the public, so that the whole community benefits (freedom +3). Access to the source code is a precondition for this.")) + (p "\xa0gnu.org")) + (h2 (@ (id "mantainer")) "Maintainer") + (p "Guix is currently being maintained by Ludovic Courtès. Please use the " - (a (@ (href "#contact")) "mailing lists") - " for contact. ") - (h2 (@ (id "license")) "Licensing") - (p "Guix is free software; you can redistribute -it and/or modify it under the terms of the " - (a (@ (rel "license") (href "/licenses/gpl.html")) - "GNU General Public License") - " as published by the Free Software Foundation; either version\xa03 of the License, or (at your option) any later version. ") - (h2 (@ (id "contact")) "Contact") - (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/guix-devel")) - (b "guix-devel")) - (small " (" - (a (@ (href "https://lists.gnu.org/archive/html/guix-devel")) - "archive") - ")") - (br) - "Discussion about the development of GNU Guix -and the Guix System Distribution (GuixSD). " - (a (@ (href "http://lists.gnu.org/archive/html/bug-guix/2013-07/msg00039.html")) - " Until July 2013") - ", the bug-Guix mailing list filled that -role. ") - (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/bug-guix")) - (b "bug-guix")) - (small " (" - (a (@ (href "https://lists.gnu.org/archive/html/bug-guix")) - "archive") - ")") - (br) - " Bug reports for GNU Guix and the Guix System Distribution. ") - (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/gnu-system-discuss")) - (b "gnu-system-discuss")) - (small " (" - (a (@ (href "http://lists.gnu.org/archive/html/gnu-system-discuss/")) - "archive") - ") ") - (br) - "Discussion about the development of the -broader GNU system. ") - (p (a (@ (href "https://lists.nongnu.org/mailman/listinfo/gnu-linux-libre")) - (b "gnu-linux-libre")) - (small " (" - (a (@ (href "http://lists.nongnu.org/archive/html/gnu-linux-libre/")) - "archive") - ") ") - (br) - "Workgroup for fully free GNU/Linux -distributions.") - (dl (dt "Commit notifications") - (dd (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/guix-commits")) - "Guix-commits") - " receives notifications of commits to the " - (a (@ (href "#contribute")) - "version control repository") - ".")) - (dt "Announcements") - (dd (p "Announcements about Guix and most -other GNU software are made on " - (a (@ (href "http://lists.gnu.org/mailman/listinfo/info-gnu")) - "info-gnu") - " (" - (a (@ (href "http://lists.gnu.org/archive/html/info-gnu/")) - "archive") - ").")) - (dt "Security reports") - (dd (p "Security reports that should not be -made immediately public can be sent directly to the maintainer. If -there is no response to an urgent issue, you can escalate to the -general " - (a (@ (href "http://lists.gnu.org/mailman/listinfo/security")) - "security") - " mailing list for advice.")) - (dt "Internet relay chat") - (dd (p "Some Guix users and developers hang -out on the " - (em "#guix") - " channel of the Freenode IRC -network (" - (a (@ (href "https://gnunet.org/bot/log/guix/")) - "logs") - ")."))))) - (div (@ (id "footer-box")) - "copyleft 2015 GuixSD " - (a (@ (href "/software/guix/contribute/") - (class "hlink-yellow")) - "Contributors") - ". Made with " - (span (@ (class "metta")) "♥") - " by humans.")))) + (a (@ (href "#contact")) "mailing lists") + " for contact. ") + (h2 (@ (id "license")) "Licensing") + (p "Guix is free software; you can redistribute it and/or modify +it under the terms of the " + (a (@ (rel "license") (href "/licenses/gpl.html")) + "GNU General Public License") + " as published by the Free Software Foundation; either +version\xa03 of the License, or (at your option) any later version. ") + (h2 (@ (id "contact")) "Contact") + (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/guix-devel")) + (b "guix-devel")) + (small " (" + (a (@ (href "https://lists.gnu.org/archive/html/guix-devel")) + "archive") + ")") + (br) + "Discussion about the development of GNU Guix and the Guix +System Distribution (GuixSD). " + (a (@ (href "http://lists.gnu.org/archive/html/bug-guix/2013-07/msg00039.html")) + " Until July 2013") + ", the bug-Guix mailing list filled that role. ") + (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/bug-guix")) + (b "bug-guix")) + (small " (" + (a (@ (href "https://lists.gnu.org/archive/html/bug-guix")) + "archive") + ")") + (br) + "Bug reports for GNU Guix and the Guix System Distribution.") + (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/gnu-system-discuss")) + (b "gnu-system-discuss")) + (small " (" + (a (@ (href "http://lists.gnu.org/archive/html/gnu-system-discuss/")) + "archive") + ") ") + (br) + "Discussion about the development of the broader GNU +system.") + (p (a (@ (href "https://lists.nongnu.org/mailman/listinfo/gnu-linux-libre")) + (b "gnu-linux-libre")) + (small " (" + (a (@ (href "http://lists.nongnu.org/archive/html/gnu-linux-libre/")) + "archive") + ") ") + (br) + "Workgroup for fully free GNU/Linux distributions.") + (dl (dt "Commit notifications") + (dd (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/guix-commits")) + "Guix-commits") + " receives notifications of commits to the " + (a (@ (href "#contribute")) + "version control repository") + ".")) + (dt "Announcements") + (dd (p "Announcements about Guix and most other GNU software +are made on " + (a (@ (href "http://lists.gnu.org/mailman/listinfo/info-gnu")) + "info-gnu") + "(" + (a (@ (href "http://lists.gnu.org/archive/html/info-gnu/")) + "archive") + ").")) + (dt "Security reports") + (dd (p "Security reports that should not be made immediately +public can be sent directly to the maintainer. If there is no response to an +urgent issue, you can escalate to the general " + (a (@ (href "http://lists.gnu.org/mailman/listinfo/security")) + "security") + " mailing list for advice.")) + (dt "Internet relay chat") + (dd (p "Some Guix users and developers hang out on the " + (em "#guix") + " channel of the Freenode IRC network (" + (a (@ (href "https://gnunet.org/bot/log/guix/")) + "logs") + ")."))))) + ,(html-page-footer)))) diff --git a/website/www/contribute.scm b/website/www/contribute.scm index da254c9..076412a 100644 --- a/website/www/contribute.scm +++ b/website/www/contribute.scm @@ -1,222 +1,158 @@ (define-module (www contribute) + #:use-module (www shared) #:export (contribute-page)) (define contribute-page - '(html (@ (lang "en")) - (head (meta (@ (charset "utf-8"))) - (meta (@ (name "author") - (content "GuixSD Contributors"))) - (meta (@ (name "description") - (content - "GuixSD is GNU's advanced system -distribution. GNU is an operating system which respects the freedom of -computer users. You are free to run the system for any purpose, study -how it works, improve it, and share it with the whole world."))) - (meta (@ (name "keywords") - (content - "GNU, FSF, Free Software Foundation, Linux, -Emacs, GCC, Unix, Free Software, Libre Software, Operating System, GNU -Kernel, GNU Hurd, GUix Package Manager, Guile Scheme, Functional -package management"))) - (meta (@ (name "viewport") - (content "width=device-width, initial-scale=1.0"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/base.css"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/article.css"))) - (link (@ (type "image/png") - (rel "icon") - (href "/software/guix/static/base/img/favicon.png"))) - (link (@ (rel "license") (href "Pending..."))) - (title "Contribute - GuixSD")) - (body (div (@ (class "message-box msg-info")) - (span (@ (class "msg-label")) "Note") - "The Guix System Distribution (GuixSD) is alpha -software. This means it is not production-ready. It may contain bugs -and lack important features. But more than a disclaimer, this is an -invitation to join us in improving it. See " - (a (@ (href "/software/guix/contribute/")) - "Contributing") - ", for more information. We hope you can soon -switch to GuixSD without fear. ") - (div (@ (id "header-box")) - (a (@ (id "logo") (href "/software/guix/")) - (img (@ (src "/software/guix/static/base/img/GuixSD-logo.png") - (alt "GuixSD")))) - (ul (@ (id "site-nav")) - (li (a (@ (href "/software/guix/download/")) - "Download")) - (li (a (@ (href "/software/guix/package-list.html")) - "Packages")) - (li (a (@ (href "/software/guix/help/")) "Help")) - (li (a (@ (href "/software/guix/contribute/")) - "Contribute")) - (li (a (@ (href "/software/guix/donate/")) - "Donate")) - (li (a (@ (href "/software/guix/about/")) - "About")))) - (div (@ (id "content-box")) - (article - (h1 "Contribute") - (p "The Guix System Distribution is a large -project developed mostly by volunteers from all around the world. You -are welcome to join us in the " - (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel")) - "development mailing list") - " or in the " - (a (@ (href "http://webchat.freenode.net/?channels=%23guix")) - "#guix channel") - " in IRC Freenode. Tell us how would you like -to help, and we will do our best to guide you. ") - (div (@ (class "text-center")) - (div (@ (class "summary-box")) - (h2 (@ (id "pms")) - "Project Management System") - (p "We use " - (a (@ (href "https://savannah.gnu.org/")) - "Savannah") - " as the central point for -development, maintenance and distribution of the Guix System -Distribution and GNU Guix.") - (p " The source files for all the -components of the project, including software, webiste, documentation, -and artwork, are available in various repositories in Savannah. ") - (a (@ (href "https://savannah.gnu.org/projects/guix") - (class "hlink-more-dark")) - "Get the source")) - (div (@ (class "summary-box")) - (h2 (@ (id "art")) "Art") - (p "We are always looking for artists -to help us design and improve user interfaces, and create multimedia -material for documentation, presentations, and promotional items. ") - (p "The artwork used in the different -components of the project is available in the " - (a (@ (href "http://git.savannah.gnu.org/cgit/guix/guix-artwork.git")) - "guix-artwork") - " repository. ") - (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") - (class "hlink-more-dark")) - "Contribute")) - (div (@ (class "summary-box")) - (h2 (@ (id "documentation")) - "Documentation") - (p "You can read the " - (a (@ (href "/software/guix/help/")) - "project documentation") - " already available in the system -and in the website, and help us identify any errors or -omissions. Creating new manuals, tutorials, and blog entries will also -help users and developers discover what we do. ") - (p "Helping improve the documentation -of the " - (a (@ (href "/software/guix/packages/")) - "packaged software") - " is another way to contribute. ") - (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") - (class "hlink-more-dark")) - "Start writing")) - (div (@ (class "summary-box")) - (h2 (@ (id "packages")) "Packages") - (p "Hundreds of software, -documentation, and assets need to be packaged to make it easier for -users to install their favorite tools with the Guix package manager, -and be productive using the system. ") - (p "Information on how to add packages -to the distribution can be found " - (a (@ (href "/software/guix/manual/guix.html#Packaging-Guidelines")) - "in the manual") - ". ") - (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") - (class "hlink-more-dark")) - "Send a new package")) - (div (@ (class "summary-box")) - (h2 (@ (id "programming")) "Programming") - (p "We use " - (a (@ (href "/software/guile/")) - "GNU Guile") - " as the main programming and -extension language for the components of the system. ") - (p "You will find it useful to browse + `(html (@ (lang "en")) + ,(html-page-header "Contribute") + (body + ,(html-page-description) + ,(html-page-links) + (div (@ (id "content-box")) + (article + (h1 "Contribute") + (p "The Guix System Distribution is a large project developed +mostly by volunteers from all around the world. You are welcome to join us in the " - (a (@ (href "/software/guile/manual")) - "Guile's manual") - " or other " - (a (@ (href "http://schemers.org/Documents/#intro-texts")) - "introductory material about -Scheme") - ". Also, make sure to read the " - (a (@ (href "http://git.savannah.gnu.org/cgit/guix.git/tree/HACKING")) - "HACKING") - " files for more details on the -development setup, as well as the coding and cooperation conventions -used in the project. ") - (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") - (class "hlink-more-dark")) - "Send a new patch")) - (div (@ (class "summary-box")) - (h2 (@ (id "sysadmin")) - "System Administration") - (p "Our system infrastructure makes it -possible for all the contributors to communicate and collaborate in -the project, and users to be able to download and install -packages. Help us keep the system up and running smoothly. ") - (p "You can also " - (a (@ (href "/software/guix/donate/")) - "donate hardware or hosting") - ". ") - (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") - (class "hlink-more-dark")) - "Contribute")) - (div (@ (class "summary-box")) - (h2 (@ (id "testing")) - "Test and Bug Reports") - (p "Install the software and send -feedback to the community about your experience. Help the project -reporting bugs.") - (p "Before reporting a bug, please -check whether the bug is already " - (a (@ (href "http://debbugs.gnu.org/guix")) - "in the bug database") - ". See " - (a (@ (href "http://debbugs.gnu.org/Developer.html")) - "the developer information page") - " for more information on how to -manipulate bug reports. ") - (a (@ (href "https://lists.gnu.org/mailman/listinfo/bug-guix") - (class "hlink-more-dark")) - "Report a bug")) - (div (@ (class "summary-box")) - (h2 (@ (id "translation")) "Translation") - (p "You can help us translate software -and documentation to your language. The main components of the Guix -System Distribution, including the Guix package manager, can be -translated in the " - (a (@ (href "http://translationproject.org/")) - "Translation Project") - ".") - (p "Other " - (a (@ (href "/software/guix/packages/")) - "software packaged") - " for the system may have their own -translation tools. Visit their websites and help translate. ") - (a (@ (href "http://translationproject.org/") - (class "hlink-more-dark")) - "Start translating"))) - (h2 (@ (id "resources")) - "Other resources for contributors") - (p "Documents, supporting material of previous -talks, and auxiliary information useful to hackers and maintainers is -available at " - (a (@ (href "http://git.savannah.gnu.org/cgit/guix/maintenance.git")) - "git://git.sv.gnu.org/guix/maintenance.git") - "."))) - (div (@ (id "footer-box")) - "copyleft 2015 GuixSD " - (a (@ (href "/software/guix/contribute/") - (class "hlink-yellow")) - "Contributors") - ". Made with " - (span (@ (class "metta")) "♥") - " by humans.")))) + (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel")) + "development mailing list") + " or in the " + (a (@ (href "http://webchat.freenode.net/?channels=%23guix")) + "#guix channel") + " in IRC Freenode. Tell us how would you like to help, and we +will do our best to guide you. ") + (div (@ (class "text-center")) + (div (@ (class "summary-box")) + (h2 (@ (id "pms")) + "Project Management System") + (p "We use " + (a (@ (href "https://savannah.gnu.org/")) + "Savannah") + " as the central point for development, +maintenance and distribution of the Guix System Distribution and GNU Guix.") + (p "The source files for all the components of the +project, including software, webiste, documentation, and artwork, are available +in various repositories in Savannah. ") + (a (@ (href "https://savannah.gnu.org/projects/guix") + (class "hlink-more-dark")) + "Get the source")) + (div (@ (class "summary-box")) + (h2 (@ (id "art")) "Art") + (p "We are always looking for artists to help us +design and improve user interfaces, and create multimedia material for +documentation, presentations, and promotional items. ") + (p "The artwork used in the different components of +the project is available in the " + (a (@ (href "http://git.savannah.gnu.org/cgit/guix/guix-artwork.git")) + "guix-artwork") + "repository. ") + (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") + (class "hlink-more-dark")) + "Contribute")) + (div (@ (class "summary-box")) + (h2 (@ (id "documentation")) + "Documentation") + (p "You can read the " + (a (@ (href "/software/guix/help/")) + "project documentation") + " already available in the system and in the +website, and help us identify any errors or omissions. Creating new manuals, +tutorials, and blog entries will also help users and developers discover what we +do. ") + (p "Helping improve the documentation of +the " + (a (@ (href "/software/guix/packages/")) + "packaged software") + " is another way to contribute. ") + (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") + (class "hlink-more-dark")) + "Start writing")) + (div (@ (class "summary-box")) + (h2 (@ (id "packages")) "Packages") + (p "Hundreds of software, documentation, and assets +need to be packaged to make it easier for users to install their favorite tools +with the Guix package manager, and be productive using the system. ") + (p "Information on how to add packages to the +distribution can be found " + (a (@ (href "/software/guix/manual/guix.html#Packaging-Guidelines")) + "in the manual") + ". ") + (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") + (class "hlink-more-dark")) + "Send a new package")) + (div (@ (class "summary-box")) + (h2 (@ (id "programming")) "Programming") + (p "We use " + (a (@ (href "/software/guile/")) + "GNU Guile") + " as the main programming and extension language +for the components of the system. ") + (p "You will find it useful to browse the " + (a (@ (href "/software/guile/manual")) + "Guile's manual") + " or other " + (a (@ (href "http://schemers.org/Documents/#intro-texts")) + "introductory material about Scheme") + ". Also, make sure to read the " + (a (@ (href "http://git.savannah.gnu.org/cgit/guix.git/tree/HACKING")) + "HACKING") + " files for more details on the development setup, +as well as the coding and cooperation conventions used in the project. ") + (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") + (class "hlink-more-dark")) + "Send a new patch")) + (div (@ (class "summary-box")) + (h2 (@ (id "sysadmin")) + "System Administration") + (p "Our system infrastructure makes it possible for +all the contributors to communicate and collaborate in the project, and users to +be able to download and install packages. Help us keep the system up and running +smoothly. ") + (p "You can also " + (a (@ (href "/software/guix/donate/")) + "donate hardware or hosting") + ". ") + (a (@ (href "http://lists.gnu.org/mailman/listinfo/guix-devel") + (class "hlink-more-dark")) + "Contribute")) + (div (@ (class "summary-box")) + (h2 (@ (id "testing")) + "Test and Bug Reports") + (p "Install the software and send feedback to the +community about your experience. Help the project reporting bugs.") + (p "Before reporting a bug, please check whether the +bug is already " + (a (@ (href "http://debbugs.gnu.org/guix")) + "in the bug database") + ". See " + (a (@ (href "http://debbugs.gnu.org/Developer.html")) + "the developer information page") + " for more information on how to manipulate bug +reports. ") + (a (@ (href "https://lists.gnu.org/mailman/listinfo/bug-guix") + (class "hlink-more-dark")) + "Report a bug")) + (div (@ (class "summary-box")) + (h2 (@ (id "translation")) "Translation") + (p "You can help us translate software and +documentation to your language. The main components of the Guix System +Distribution, including the Guix package manager, can be translated in the " + (a (@ (href "http://translationproject.org/")) + "Translation Project") + ".") + (p "Other " + (a (@ (href "/software/guix/packages/")) + "software packaged") + " for the system may have their own translation +tools. Visit their websites and help translate. ") + (a (@ (href "http://translationproject.org/") + (class "hlink-more-dark")) + "Start translating"))) + (h2 (@ (id "resources")) + "Other resources for contributors") + (p "Documents, supporting material of previous talks, and +auxiliary information useful to hackers and maintainers is available at " + (a (@ (href "http://git.savannah.gnu.org/cgit/guix/maintenance.git")) + "git://git.sv.gnu.org/guix/maintenance.git") + "."))) + ,(html-page-footer)))) diff --git a/website/www/donate.scm b/website/www/donate.scm index 8072a19..5ded10a 100644 --- a/website/www/donate.scm +++ b/website/www/donate.scm @@ -1,135 +1,76 @@ (define-module (www donate) + #:use-module (www shared) #:export (donate-page)) (define donate-page - '(html (@ (lang "en")) - (head (meta (@ (charset "utf-8"))) - (meta (@ (name "author") - (content "GuixSD Contributors"))) - (meta (@ (name "description") - (content - "GuixSD is GNU's advanced system -distribution. GNU is an operating system which respects the freedom of -computer users. You are free to run the system for any purpose, study -how it works, improve it, and share it with the whole world."))) - (meta (@ (name "keywords") - (content - "GNU, FSF, Free Software Foundation, Linux, -Emacs, GCC, Unix, Free Software, Libre Software, Operating System, GNU -Kernel, GNU Hurd, GUix Package Manager, Guile Scheme, Functional -package management"))) - (meta (@ (name "viewport") - (content "width=device-width, initial-scale=1.0"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/base.css"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/article.css"))) - (link (@ (type "image/png") - (rel "icon") - (href "/software/guix/static/base/img/favicon.png"))) - (link (@ (rel "license") (href "Pending..."))) - (title "Donate - GuixSD")) - (body (div (@ (class "message-box msg-info")) - (span (@ (class "msg-label")) "Note") - "The Guix System Distribution (GuixSD) is alpha -software. This means it is not production-ready. It may contain bugs -and lack important features. But more than a disclaimer, this is an -invitation to join us in improving it. See " - (a (@ (href "/software/guix/contribute/")) - "Contributing") - ", for more information. We hope you can soon -switch to GuixSD without fear. ") - (div (@ (id "header-box")) - (a (@ (id "logo") (href "/software/guix/")) - (img (@ (src "/software/guix/static/base/img/GuixSD-logo.png") - (alt "GuixSD")))) - (ul (@ (id "site-nav")) - (li (a (@ (href "/software/guix/download/")) - "Download")) - (li (a (@ (href "/software/guix/package-list.html")) - "Packages")) - (li (a (@ (href "/software/guix/help/")) "Help")) - (li (a (@ (href "/software/guix/contribute/")) - "Contribute")) - (li (a (@ (href "/software/guix/donate/")) - "Donate")) - (li (a (@ (href "/software/guix/about/")) - "About")))) - (div (@ (id "content-box")) - (article - (h1 "Donate") - (p "The " - (a (@ (href "http://hydra.gnu.org/jobset/gnu/master")) - "build farm") - " of the Guix System Distribution runs on -donated hardware and hosting. Please consider helping the project with -donations. ") - (p "As the distribution grows (see the " - (a (@ (href "/software/guix/packages/")) - "package list") - "), so do the computing and storage needs. We -are looking for donations of hardware and optionally hosting for the -following kinds of machines (they should be usable with exclusively -free software): ") - (ul (li "x86_64 machines, with on the order of -1\xa0TiB of storage and 4\xa0GiB of RAM;") - (li "armv7 machines that would allow us to -provide pre-built binaries for the " - (a (@ (href "https://savannah.gnu.org/forum/forum.php?forum_id=8175")) - "recently-added ARM port") - ";") - (li "mips64el machines to strengthen this port.")) - (p "Please get in touch with us through the " - (a (@ (href "/software/guix/about/#contact")) - "usual channels") - "or using the address@hidden private -alias to discuss any opportunities. ") - (h2 (@ (id "hardware-donors")) - "Thanks to the donors!") - (p "The table below summarizes hardware and -hosting donations that make the " - (a (@ (href "http://hydra.gnu.org")) - "build farm") - " for the Guix System Distribution a + `(html (@ (lang "en")) + ,(html-page-header "Home") + (body + ,(html-page-description) + ,(html-page-links) + (div (@ (id "content-box")) + (article + (h1 "Donate") + (p "The " + (a (@ (href "http://hydra.gnu.org/jobset/gnu/master")) + "build farm") + " of the Guix System Distribution runs on donated hardware +and hosting. Please consider helping the project with donations. ") + (p "As the distribution grows (see the " + (a (@ (href "/software/guix/packages/")) + "package list") + "), so do the computing and storage needs. We are looking for +donations of hardware and optionally hosting for the following kinds of +machines (they should be usable with exclusively free software): ") + (ul (li "x86_64 machines, with on the order of 1\xa0TiB of +storage and 4\xa0GiB of RAM;") + (li "armv7 machines that would allow us to provide pre-built +binaries for the " + (a (@ (href "https://savannah.gnu.org/forum/forum.php?forum_id=8175")) + "recently-added ARM port") + ";") + (li "mips64el machines to strengthen this port.")) + (p "Please get in touch with us through the " + (a (@ (href "/software/guix/about/#contact")) + "usual channels") + "or using the address@hidden private alias to discuss +any opportunities. ") + (h2 (@ (id "hardware-donors")) "Thanks to the donors!") + (p "The table below summarizes hardware and hosting donations +that make the " + (a (@ (href "http://hydra.gnu.org")) + "build farm") + " for the Guix System Distribution a reality.") - (table (thead (tr (th "machine") - (th "system") - (th "donors"))) - (tbody (tr (td "hydra.gnu.org") - (td "build farm front-end") - (td (ul (li (a (@ (href "http://www.fsf.org/")) - "Free Software \t Foundation"))))) - (tr (td "hydra.gnunet.org") - (td "x86_64-linux, i686-linux") - (td (ul (li (a (@ (href "https://gnunet.org/fsnsg")) - "Free Secure + (table (thead (tr (th "machine") + (th "system") + (th "donors"))) + (tbody (tr (td "hydra.gnu.org") + (td "build farm front-end") + (td (ul (li (a (@ (href "http://www.fsf.org/")) + "Free Software \t Foundation"))))) + (tr (td "hydra.gnunet.org") + (td "x86_64-linux, i686-linux") + (td (ul (li (a (@ (href "https://gnunet.org/fsnsg")) + "Free Secure Network Systems Group") - " at the " - (a (@ (href "http://www.tum.de/")) - "Technische + " at the " + (a (@ (href "http://www.tum.de/")) + "Technische Universität München"))))) - (tr (td "chapters.gnu.org") - (td "x86_64-linux, i686-linux") - (td (ul (li (a (@ (href "http://es.gnu.org")) - "GNU\xa0España") - " (hardware)") - (li (a (@ (href "http://fsffrance.org/index.en.html")) - "FSF\xa0France") - " (hosting)")))) - (tr (td "wildebeest") - (td "x86_64-linux, i686-linux") - (td (ul (li "anonymous")))) - (tr (td "librenote") - (td "mips64el-linux") - (td (ul (li "Daniel Clark (hardware)") - (li "Mark H. Weaver (hosting)")))))))) - (div (@ (id "footer-box")) - "copyleft 2015 GuixSD " - (a (@ (href "/software/guix/contribute/") - (class "hlink-yellow")) - "Contributors") - ". Made with " - (span (@ (class "metta")) "♥") - " by humans.")))) + (tr (td "chapters.gnu.org") + (td "x86_64-linux, i686-linux") + (td (ul (li (a (@ (href "http://es.gnu.org")) + "GNU\xa0España") + " (hardware)") + (li (a (@ (href "http://fsffrance.org/index.en.html")) + "FSF\xa0France") + " (hosting)")))) + (tr (td "wildebeest") + (td "x86_64-linux, i686-linux") + (td (ul (li "anonymous")))) + (tr (td "librenote") + (td "mips64el-linux") + (td (ul (li "Daniel Clark (hardware)") + (li "Mark H. Weaver (hosting)")))))))) + ,(html-page-footer)))) diff --git a/website/www/download.scm b/website/www/download.scm index 4aef10d..35a86ec 100644 --- a/website/www/download.scm +++ b/website/www/download.scm @@ -1,185 +1,126 @@ (define-module (www download) + #:use-module (www shared) #:export (download-page)) (define download-page - '(html (@ (lang "en")) - (head (meta (@ (charset "utf-8"))) - (meta (@ (name "author") - (content "GuixSD Contributors"))) - (meta (@ (name "description") - (content - "GuixSD is GNU's advanced system -distribution. GNU is an operating system which respects the freedom of -computer users. You are free to run the system for any purpose, study -how it works, improve it, and share it with the whole world."))) - (meta (@ (name "keywords") - (content - "GNU, FSF, Free Software Foundation, Linux, -Emacs, GCC, Unix, Free Software, Libre Software, Operating System, GNU -Kernel, GNU Hurd, GUix Package Manager, Guile Scheme, Functional -package management"))) - (meta (@ (name "viewport") - (content "width=device-width, initial-scale=1.0"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/base.css"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/download.css"))) - (link (@ (type "image/png") - (rel "icon") - (href "/software/guix/static/base/img/favicon.png"))) - (link (@ (rel "license") (href "Pending..."))) - (title "Download - GuixSD")) - (body (div (@ (class "message-box msg-info")) - (span (@ (class "msg-label")) "Note") - "The Guix System Distribution (GuixSD) is alpha -software. This means it is not production-ready. It may contain bugs -and lack important features. But more than a disclaimer, this is an -invitation to join us in improving it. See " - (a (@ (href "/software/guix/contribute/")) - "Contributing") - ", for more information. We hope you can soon -switch to GuixSD without fear. ") - (div (@ (id "header-box")) - (a (@ (id "logo") (href "/software/guix/")) - (img (@ (src "/software/guix/static/base/img/GuixSD-logo.png") - (alt "GuixSD")))) - (ul (@ (id "site-nav")) - (li (a (@ (href "/software/guix/download/")) - "Download")) - (li (a (@ (href "/software/guix/package-list.html")) - "Packages")) - (li (a (@ (href "/software/guix/help/")) "Help")) - (li (a (@ (href "/software/guix/contribute/")) - "Contribute")) - (li (a (@ (href "/software/guix/donate/")) - "Donate")) - (li (a (@ (href "/software/guix/about/")) - "About")))) - (div (@ (id "content-box")) - (article - (h1 "Download") - (p "As of version 0.8.1, the Guix System -Distribution " - (a (@ (href "/software/guix/manual/html_node/System-Installation.html")) - "can be installed") - " on an i686 or x86_64 machine. It uses the " - (a (@ (href "/software/linux-libre")) - "Linux-Libre") - " kernel and the " - (a (@ (href "/software/dmd")) "GNU dmd") - " init system. Alternately, its package -manager, GNU Guix, can be installed as an additional package manager -on top of an installed Linux-based system.") - (div (@ (class "text-center")) - (div (@ (class "summary-box")) - (div (@ (class "text-center")) - (img (@ (src "/software/guix/static/base/img/GuixSD-package.png") - (alt "")))) - (h2 "GuixSD 0.8.2 (i686)") - (p "USB installer for machines with the -following minimum system requirements:") - (table (tbody (tr (th "Architecture") - (td "i686")) - (tr (th "Processor") - (td "1GHz")) - (tr (th "Memory") - (td "512MB")) - (tr (th "Hard Drive") - (td "5GB")))) - (p (@ (class "text-center")) - (a (@ (href "#") - (class "hlink-yellow-boxed")) - "DOWNLOAD") - (br) - "(140MB approx.)" - (br) - (a (@ (href "#")) "Get signature")) - (p "See the " - (a (@ (href "/software/guix/manual/html_node/System-Installation.html")) - "installation instructions") - " from the manual.") - (p "Alternative download methods: " - (a (@ (href "#")) "torrent") - ".")) - (div (@ (class "summary-box")) - (div (@ (class "text-center")) - (img (@ (src "/software/guix/static/base/img/GuixSD-package.png") - (alt "")))) - (h2 "GuixSD 0.8.2 (x86_64)") - (p "USB installer for machines with the -following minimum system requirements:") - (table (tbody (tr (th "Architecture") - (td "x86_64")) - (tr (th "Processor") - (td "1GHz")) - (tr (th "Memory") - (td "512MB")) - (tr (th "Hard Drive") - (td "5GB")))) - (p (@ (class "text-center")) - (a (@ (href "#") - (class "hlink-yellow-boxed")) - "DOWNLOAD") - (br) - "(144MB approx.)" - (br) - (a (@ (href "#")) "Get signature")) - (p "See the " - (a (@ (href "/software/guix/manual/html_node/System-Installation.html")) - "installation instructions") - " from the manual.") - (p "Alternative download methods: " - (a (@ (href "#")) "torrent") - ".")) - (div (@ (class "summary-box")) - (div (@ (class "text-center")) - (img (@ (src "/software/guix/static/base/img/Guix-package.png") - (alt "")))) - (h2 "GNU Guix 0.8.2") - (p "Archive distribution to install -from source on machines with the following minimum system -requirements:") - (table (tbody (tr (th "Architecture") - (td "i686, x86_64, mips64el, or armv7")) - (tr (th "Processor") - (td "1GHz")) - (tr (th "Memory") - (td "512MB")) - (tr (th "Hard Drive") - (td "5GB")))) - (p (@ (class "text-center")) - (a (@ (href "#") - (class "hlink-yellow-boxed")) - "DOWNLOAD") - (br) - "(7.7MB approx.)" - (br) - (a (@ (href "#")) "Get signature")) - (p "See the " - (a (@ (href "/software/guix/manual/html_node/System-Installation.html")) - " installation instructions") - " from the manual.") - (p "Alternative download methods: " - (a (@ (href "#")) "torrent") - ". "))) - (p "Source code for the Guix System Distribution -USB installation images as well as GNU Guix can be found on the GNU -ftp server for " - (em "alpha") - " releases: " - (a (@ (href "http://alpha.gnu.org/gnu/guix/")) - "http://alpha.gnu.org/gnu/guix/") - " (via HTTP) and " - (a (@ (href "ftp://alpha.gnu.org/gnu/guix/")) - "ftp://alpha.gnu.org/gnu/guix/") - " (via FTP). "))) - (div (@ (id "footer-box")) - "copyleft 2015 GuixSD " - (a (@ (href "/software/guix/contribute/") - (class "hlink-yellow")) - "Contributors") - ". Made with " - (span (@ (class "metta")) "♥") - " by humans.")))) + `(html (@ (lang "en")) + ,(html-page-header "Download") + (body + ,(html-page-description) + ,(html-page-links) + (div (@ (id "content-box")) + (article + (h1 "Download") + (p "As of version 0.8.1, the Guix System Distribution " + (a (@ (href "/software/guix/manual/html_node/System-Installation.html")) + "can be installed") + " on an i686 or x86_64 machine. It uses the " + (a (@ (href "/software/linux-libre")) + "Linux-Libre") + " kernel and the " + (a (@ (href "/software/dmd")) "GNU dmd") + " init system. Alternately, its package manager, GNU Guix, +can be installed as an additional package manager on top of an installed +Linux-based system.") + (div (@ (class "text-center")) + (div (@ (class "summary-box")) + (div (@ (class "text-center")) + (img (@ (src "/software/guix/static/base/img/GuixSD-package.png") + (alt "")))) + (h2 "GuixSD 0.8.2 (i686)") + (p "USB installer for machines with the following +minimum system requirements:") + (table (tbody (tr (th "Architecture") + (td "i686")) + (tr (th "Processor") + (td "1GHz")) + (tr (th "Memory") + (td "512MB")) + (tr (th "Hard Drive") + (td "5GB")))) + (p (@ (class "text-center")) + (a (@ (href "#") + (class "hlink-yellow-boxed")) + "DOWNLOAD") + (br) + "(140MB approx.)" + (br) + (a (@ (href "#")) "Get signature")) + (p "See the " + (a (@ (href "/software/guix/manual/html_node/System-Installation.html")) + "installation instructions") + " from the manual.") + (p "Alternative download methods: " + (a (@ (href "#")) "torrent") + ".")) + (div (@ (class "summary-box")) + (div (@ (class "text-center")) + (img (@ (src "/software/guix/static/base/img/GuixSD-package.png") + (alt "")))) + (h2 "GuixSD 0.8.2 (x86_64)") + (p "USB installer for machines with the following +minimum system requirements:") + (table (tbody (tr (th "Architecture") + (td "x86_64")) + (tr (th "Processor") + (td "1GHz")) + (tr (th "Memory") + (td "512MB")) + (tr (th "Hard Drive") + (td "5GB")))) + (p (@ (class "text-center")) + (a (@ (href "#") + (class "hlink-yellow-boxed")) + "DOWNLOAD") + (br) + "(144MB approx.)" + (br) + (a (@ (href "#")) "Get signature")) + (p "See the " + (a (@ (href "/software/guix/manual/html_node/System-Installation.html")) + "installation instructions") + " from the manual.") + (p "Alternative download methods: " + (a (@ (href "#")) "torrent") + ".")) + (div (@ (class "summary-box")) + (div (@ (class "text-center")) + (img (@ (src "/software/guix/static/base/img/Guix-package.png") + (alt "")))) + (h2 "GNU Guix 0.8.2") + (p "Archive distribution to install from source on +machines with the following minimum system requirements:") + (table (tbody (tr (th "Architecture") + (td "i686, x86_64, mips64el, or armv7")) + (tr (th "Processor") + (td "1GHz")) + (tr (th "Memory") + (td "512MB")) + (tr (th "Hard Drive") + (td "5GB")))) + (p (@ (class "text-center")) + (a (@ (href "#") + (class "hlink-yellow-boxed")) + "DOWNLOAD") + (br) + "(7.7MB approx.)" + (br) + (a (@ (href "#")) "Get signature")) + (p "See the " + (a (@ (href "/software/guix/manual/html_node/System-Installation.html")) + " installation instructions") + " from the manual.") + (p "Alternative download methods: " + (a (@ (href "#")) "torrent") + ". "))) + (p "Source code for the Guix System Distribution USB +installation images as well as GNU Guix can be found on the GNU ftp server for " + (em "alpha") + " releases: " + (a (@ (href "http://alpha.gnu.org/gnu/guix/")) + "http://alpha.gnu.org/gnu/guix/") + " (via HTTP) and " + (a (@ (href "ftp://alpha.gnu.org/gnu/guix/")) + "ftp://alpha.gnu.org/gnu/guix/") + " (via FTP). "))) + ,(html-page-footer)))) diff --git a/website/www/help.scm b/website/www/help.scm index 93060a3..0899ebc 100644 --- a/website/www/help.scm +++ b/website/www/help.scm @@ -1,241 +1,183 @@ (define-module (www help) + #:use-module (www shared) #:export (help-page)) (define help-page - '(html (@ (lang "en")) - (head (meta (@ (charset "utf-8"))) - (meta (@ (name "author") - (content "GuixSD Contributors"))) - (meta (@ (name "description") - (content - "GuixSD is GNU's advanced system -distribution. GNU is an operating system which respects the freedom of -computer users. You are free to run the system for any purpose, study -how it works, improve it, and share it with the whole world."))) - (meta (@ (name "keywords") - (content - "GNU, FSF, Free Software Foundation, Linux, -Emacs, GCC, Unix, Free Software, Libre Software, Operating System, GNU -Kernel, GNU Hurd, GUix Package Manager, Guile Scheme, Functional -package management"))) - (meta (@ (name "viewport") - (content "width=device-width, initial-scale=1.0"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/base.css"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/help.css"))) - (link (@ (type "image/png") - (rel "icon") - (href "/software/guix/static/base/img/favicon.png"))) - (link (@ (rel "license") (href "Pending..."))) - (title "Help - GuixSD")) - (body (div (@ (class "message-box msg-info")) - (span (@ (class "msg-label")) "Note") - "The Guix System Distribution (GuixSD) is alpha -software. This means it is not production-ready. It may contain bugs -and lack important features. But more than a disclaimer, this is an -invitation to join us in improving it. See " - (a (@ (href "/software/guix/contribute/")) - "Contributing") - ", for more information. We hope you can soon -switch to GuixSD without fear. ") - (div (@ (id "header-box")) - (a (@ (id "logo") (href "/software/guix/")) - (img (@ (src "/software/guix/static/base/img/GuixSD-logo.png") - (alt "GuixSD")))) - (ul (@ (id "site-nav")) - (li (a (@ (href "/software/guix/download/")) - "Download")) - (li (a (@ (href "/software/guix/package-list.html")) - "Packages")) - (li (a (@ (href "/software/guix/help/")) "Help")) - (li (a (@ (href "/software/guix/contribute/")) - "Contribute")) - (li (a (@ (href "/software/guix/donate/")) - "Donate")) - (li (a (@ (href "/software/guix/about/")) - "About")))) - (div (@ (id "content-box")) - (article - (h1 "Help") - (div (@ (class "text-center")) - (div (@ (class "summary-box")) - (div (@ (class "text-center")) - (img (@ (src "/software/guix/static/base/img/guixsd-manual-icon.png") - (alt "")))) - (h2 "GuixSD Manual") - (p "The documentation about the Guix -System Distribution is available online as part of the GNU Guix -package manager manual.") - (a (@ (href "/software/guix/manual/guix.html#GNU-Distribution") - (class "hlink-more-dark")) - "Read the manual")) - (div (@ (class "summary-box")) - (div (@ (class "text-center")) - (img (@ (src "/software/guix/static/base/img/guix-manual-icon.png") - (alt "")))) - (h2 "GNU Guix Manual") - (p "Documentation for the GNU Guix -package manager is available online. You may also find more -information about Guix by running " - (em "info\xa0guix") - ".") - (a (@ (href "/software/guix/manual/") - (class "hlink-more-dark")) - "Read the manual")) - (div (@ (class "summary-box")) - (div (@ (class "text-center")) - (img (@ (src "/software/guix/static/base/img/library-icon.png") - (alt "")))) - (h2 "GNU Manuals") - (p "GuixSD is a distribution of the " - (a (@ (href "http://www.gnu.org/")) - "GNU operating system") - ". Most GNU software is documented -and the documentation is available online in various formats. ") - (a (@ (href "http://www.gnu.org/doc/doc.en.html") - (class "hlink-more-dark")) - "Browse the manuals")) - (div (@ (class "summary-box")) - (div (@ (class "text-center")) - (img (@ (src "/software/guix/static/base/img/chat-icon.png") - (alt "")))) - (h2 "IRC Chat") - (p "For real-time support from the -community, you can connect to the " - (em "#guix") - " channel on irc.freenode.net. There -you can get help about anything related to both the Guix System -Distribution and GNU Guix.") - (p "The " - (em "#guix") - " channel is logged. Previous -conversations can be browsed online. See the " - (a (@ (href "https://gnunet.org/bot/log/guix/")) - "channel logs") - ". ") - (a (@ (href "http://webchat.freenode.net/?channels=%23guix") - (class "hlink-more-dark")) - "Connect")) - (div (@ (class "summary-box")) - (div (@ (class "text-center")) - (img (@ (src "/software/guix/static/base/img/email-icon.png") - (alt "")))) - (h2 "Mailing lists") - (p "Email support from the community is -also available through the following mailing lists. The messages sent -to the lists are public and archived online.") - (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/guix-devel")) - (b "guix-devel")) - (small " (" - (a (@ (href "https://lists.gnu.org/archive/html/guix-devel")) - "archive") - ") ") - (br) - "Discussion about the development of -GNU Guix and the Guix System Distribution (GuixSD).") - (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/bug-guix")) - (b "bug-guix")) - (small " (" - (a (@ (href "https://lists.gnu.org/archive/html/bug-guix")) - "archive") - ") ") - (br) - "Bug reports for GNU Guix and the -Guix System Distribution. ") - (a (@ (href "https://savannah.gnu.org/mail/?group=guix") - (class "hlink-more-dark")) - "Check all the lists"))) - (h2 "Additional Documentation") - (ul (li (a (@ (href "http://arxiv.org/abs/1305.4584")) - (i "Functional Package Management with Guix")) - ", presented at the " - (a (@ (href "http://www-sop.inria.fr/members/Manuel.Serrano/conferences/els13.html")) - "2013 European Lisp Symposium (ELS)") - ", describes the rationale, design, and + `(html (@ (lang "en")) + ,(html-page-header "Help") + (body + ,(html-page-description) + ,(html-page-links) + (div (@ (id "content-box")) + (article + (h1 "Help") + (div (@ (class "text-center")) + (div (@ (class "summary-box")) + (div (@ (class "text-center")) + (img (@ (src "/software/guix/static/base/img/guixsd-manual-icon.png") + (alt "")))) + (h2 "GuixSD Manual") + (p "The documentation about the Guix System +Distribution is available online as part of the GNU Guix package manager +manual.") + (a (@ (href "/software/guix/manual/guix.html#GNU-Distribution") + (class "hlink-more-dark")) + "Read the manual")) + (div (@ (class "summary-box")) + (div (@ (class "text-center")) + (img (@ (src "/software/guix/static/base/img/guix-manual-icon.png") + (alt "")))) + (h2 "GNU Guix Manual") + (p "Documentation for the GNU Guix package manager is +available online. You may also find more information about Guix by running " + (em "info\xa0guix") + ".") + (a (@ (href "/software/guix/manual/") + (class "hlink-more-dark")) + "Read the manual")) + (div (@ (class "summary-box")) + (div (@ (class "text-center")) + (img (@ (src "/software/guix/static/base/img/library-icon.png") + (alt "")))) + (h2 "GNU Manuals") + (p "GuixSD is a distribution of the " + (a (@ (href "http://www.gnu.org/")) + "GNU operating system") + ". Most GNU software is documented and the +documentation is available online in various formats. ") + (a (@ (href "http://www.gnu.org/doc/doc.en.html") + (class "hlink-more-dark")) + "Browse the manuals")) + (div (@ (class "summary-box")) + (div (@ (class "text-center")) + (img (@ (src "/software/guix/static/base/img/chat-icon.png") + (alt "")))) + (h2 "IRC Chat") + (p "For real-time support from the community, you can +connect to the " + (em "#guix") + " channel on irc.freenode.net. There you can get +help about anything related to both the Guix System Distribution and GNU Guix.") + (p "The " + (em "#guix") + " channel is logged. Previous conversations can be +browsed online. See the " + (a (@ (href "https://gnunet.org/bot/log/guix/")) + "channel logs") + ". ") + (a (@ (href "http://webchat.freenode.net/?channels=%23guix") + (class "hlink-more-dark")) + "Connect")) + (div (@ (class "summary-box")) + (div (@ (class "text-center")) + (img (@ (src "/software/guix/static/base/img/email-icon.png") + (alt "")))) + (h2 "Mailing lists") + (p "Email support from the community is also available +through the following mailing lists. The messages sent to the lists are public +and archived online.") + (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/guix-devel")) + (b "guix-devel")) + (small " (" + (a (@ (href "https://lists.gnu.org/archive/html/guix-devel")) + "archive") + ") ") + (br) + "Discussion about the development of GNU Guix and +the Guix System Distribution (GuixSD).") + (p (a (@ (href "https://lists.gnu.org/mailman/listinfo/bug-guix")) + (b "bug-guix")) + (small " (" + (a (@ (href "https://lists.gnu.org/archive/html/bug-guix")) + "archive") + ") ") + (br) + "Bug reports for GNU Guix and the Guix System +Distribution. ") + (a (@ (href "https://savannah.gnu.org/mail/?group=guix") + (class "hlink-more-dark")) + "Check all the lists"))) + (h2 "Additional Documentation") + (ul (li (a (@ (href "http://arxiv.org/abs/1305.4584")) + (i "Functional Package Management with Guix")) + ", presented at the " + (a (@ (href "http://www-sop.inria.fr/members/Manuel.Serrano/conferences/els13.html")) + "2013 European Lisp Symposium (ELS)") + ", describes the rationale, design, and implementation of Guix's packaging API. \t ")) - (h2 (@ (id "talks")) "Talks") - (ul (li "February 2015, " - (a (@ (href "https://fosdem.org/2015/schedule/event/the_emacs_of_distros/")) - "FOSDEM") - ": " - (a (@ (href "guix-fosdem-20150131.pdf")) - "slides") - ", " - (a (@ (href "http://audio-video.gnu.org/video/misc/2015-01__GNU_Guix__The_Emacs_of_Distros.webm")) - "video") - " (WebM; 47 minutes) ") - (li "August 2014, " - (a (@ (href "http://audio-video.gnu.org/video/ghm2014/")) - "GNU Hackers Meeting") - ": " - (a (@ (href "guix-ghm-20140815.pdf")) - "slides") - ", " - (a (@ (href "http://audio-video.gnu.org/video/ghm2014/2014-08--courtes--were-building-the-gnu-system--ghm.webm")) - "video") - " (WebM; 60 minutes) ") - (li "July 2014, " - (a (@ (href "http://www.open-bio.org/wiki/Codefest_2014")) - "Open Bioinformatics Codefest 2014") - ": " - (a (@ (href "guix-openbio-codefest-20140709.pdf")) - "slides")) - (li "February 2014, " - (a (@ (href "https://fosdem.org/2014/schedule/event/gnuguix/")) - "FOSDEM") - ": " - (a (@ (href "guix-fosdem-20140201.pdf")) - "slides") - ", " - (a (@ (href "http://video.fosdem.org/2014/H1302_Depage/Sunday/Growing_a_GNU_with_Guix.webm")) - "video") - " (WebM; 55 minutes) ") - (li "August 2013, " - (a (@ (href "/ghm/2013/paris")) - "GNU Hackers Meeting") - (ul (li (i "GNU Guix: Package without a + (h2 (@ (id "talks")) "Talks") + (ul (li "February 2015, " + (a (@ (href "https://fosdem.org/2015/schedule/event/the_emacs_of_distros/")) + "FOSDEM") + ": " + (a (@ (href "guix-fosdem-20150131.pdf")) + "slides") + ", " + (a (@ (href "http://audio-video.gnu.org/video/misc/2015-01__GNU_Guix__The_Emacs_of_Distros.webm")) + "video") + " (WebM; 47 minutes) ") + (li "August 2014, " + (a (@ (href "http://audio-video.gnu.org/video/ghm2014/")) + "GNU Hackers Meeting") + ": " + (a (@ (href "guix-ghm-20140815.pdf")) + "slides") + ", " + (a (@ (href "http://audio-video.gnu.org/video/ghm2014/2014-08--courtes--were-building-the-gnu-system--ghm.webm")) + "video") + " (WebM; 60 minutes) ") + (li "July 2014, " + (a (@ (href "http://www.open-bio.org/wiki/Codefest_2014")) + "Open Bioinformatics Codefest 2014") + ": " + (a (@ (href "guix-openbio-codefest-20140709.pdf")) + "slides")) + (li "February 2014, " + (a (@ (href "https://fosdem.org/2014/schedule/event/gnuguix/")) + "FOSDEM") + ": " + (a (@ (href "guix-fosdem-20140201.pdf")) + "slides") + ", " + (a (@ (href "http://video.fosdem.org/2014/H1302_Depage/Sunday/Growing_a_GNU_with_Guix.webm")) + "video") + " (WebM; 55 minutes) ") + (li "August 2013, " + (a (@ (href "/ghm/2013/paris")) + "GNU Hackers Meeting") + (ul (li (i "GNU Guix: Package without a scheme!") - ", by Andreas: " - (a (@ (href "guix-ghm-andreas-20130823.pdf")) - "slides")) - (li (i "Guix, the Computing Freedom + ", by Andreas: " + (a (@ (href "guix-ghm-andreas-20130823.pdf")) + "slides")) + (li (i "Guix, the Computing Freedom Deployment Tool") - ", by Ludovic: " - (a (@ (href "guix-ghm-ludo-20130823.pdf")) - "slides") - ", " - (a (@ (href "http://audio-video.gnu.org/video/ghm2013/Ludovic_Courtes-GNU_Guix_the_computing_freedom_deployment_tool_.webm")) - "video") - " (WebM; 60 minutes, 127MB) "))) - (li "June 2013, " - (a (@ (href "http://www-sop.inria.fr/members/Manuel.Serrano/conferences/els13.html")) - " European Lisp Symposium (ELS)") - ": " - (a (@ (href "guix-els-20130603.pdf")) - "slides") - ", " - (a (@ (href "http://www.nicklevine.org/els2013/ludovic-courtes.mp3")) - "audio")) - (li "July 2012, " - (a (@ (href "/ghm/2012/ddorf/")) - "GNU Hackers Meeting") - ": " - (a (@ (href "guix-ghm-20120721.pdf")) - "slides") - ", " - (a (@ (href "http://audio-video.gnu.org/video/ghm2012/guix.ogv")) - "video") - " (Ogg/" - (a (@ (href "http://theora.org/")) "Theora") - "; 84 minutes, 88.1MB)")))) - (div (@ (id "footer-box")) - "copyleft 2015 GuixSD " - (a (@ (href "/software/guix/contribute/") - (class "hlink-yellow")) - "Contributors") - ". Made with " - (span (@ (class "metta")) "♥") - " by humans.")))) + ", by Ludovic: " + (a (@ (href "guix-ghm-ludo-20130823.pdf")) + "slides") + ", " + (a (@ (href "http://audio-video.gnu.org/video/ghm2013/Ludovic_Courtes-GNU_Guix_the_computing_freedom_deployment_tool_.webm")) + "video") + " (WebM; 60 minutes, 127MB) "))) + (li "June 2013, " + (a (@ (href "http://www-sop.inria.fr/members/Manuel.Serrano/conferences/els13.html")) + " European Lisp Symposium (ELS)") + ": " + (a (@ (href "guix-els-20130603.pdf")) + "slides") + ", " + (a (@ (href "http://www.nicklevine.org/els2013/ludovic-courtes.mp3")) + "audio")) + (li "July 2012, " + (a (@ (href "/ghm/2012/ddorf/")) + "GNU Hackers Meeting") + ": " + (a (@ (href "guix-ghm-20120721.pdf")) + "slides") + ", " + (a (@ (href "http://audio-video.gnu.org/video/ghm2012/guix.ogv")) + "video") + " (Ogg/" + (a (@ (href "http://theora.org/")) "Theora") + "; 84 minutes, 88.1MB)")))) + ,(html-page-footer)))) diff --git a/website/www/packages.scm b/website/www/packages.scm index 56b613a..bb9c75f 100644 --- a/website/www/packages.scm +++ b/website/www/packages.scm @@ -1,79 +1,22 @@ (define-module (www packages) + #:use-module (www shared) #:export (packages-page)) (define packages-page - '(html (@ (lang "en")) - (head (meta (@ (charset "utf-8"))) - (meta (@ (name "author") - (content "GuixSD Contributors"))) - (meta (@ (name "description") - (content - "GuixSD is GNU's advanced system -distribution. GNU is an operating system which respects the freedom of -computer users. You are free to run the system for any purpose, study -how it works, improve it, and share it with the whole world."))) - (meta (@ (name "keywords") - (content - "GNU, FSF, Free Software Foundation, Linux, -Emacs, GCC, Unix, Free Software, Libre Software, Operating System, GNU -Kernel, GNU Hurd, GUix Package Manager, Guile Scheme, Functional -package management"))) - (meta (@ (name "viewport") - (content "width=device-width, initial-scale=1.0"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/base.css"))) - (link (@ (type "text/css") - (rel "stylesheet") - (href "/software/guix/static/base/css/article.css"))) - (link (@ (type "image/png") - (rel "icon") - (href "/software/guix/static/base/img/favicon.png"))) - (link (@ (rel "license") (href "Pending..."))) - (title "Packages - GuixSD")) - (body (div (@ (class "message-box msg-info")) - (span (@ (class "msg-label")) "Note") - "The Guix System Distribution (GuixSD) is alpha -software. This means it is not production-ready. It may contain bugs -and lack important features. But more than a disclaimer, this is an -invitation to join us in improving it. See " - (a (@ (href "/software/guix/contribute/")) - "Contributing") - ", for more information. We hope you can soon -switch to GuixSD without fear. ") - (div (@ (id "header-box")) - (a (@ (id "logo") (href "/software/guix/")) - (img (@ (src "/software/guix/static/base/img/GuixSD-logo.png") - (alt "GuixSD")))) - (ul (@ (id "site-nav")) - (li (a (@ (href "/software/guix/download/")) - "Download")) - (li (a (@ (href "/software/guix/package-list.html")) - "Packages")) - (li (a (@ (href "/software/guix/help/")) "Help")) - (li (a (@ (href "/software/guix/contribute/")) - "Contribute")) - (li (a (@ (href "/software/guix/donate/")) - "Donate")) - (li (a (@ (href "/software/guix/about/")) - "About")))) - (div (@ (id "content-box")) - (article - (h1 "Packages") - (p "The Guix System Distribution provides 1,500+ -packages transparently " - (a (@ (href "http://hydra.gnu.org/jobset/gnu/master#tabs-status")) - "available as pre-built binaries") - ". This is a complete lists of the -packages. Our " - (a (@ (href "http://hydra.gnu.org/jobset/gnu/master")) - "continuous integration system") - " shows their current build status."))) - (div (@ (id "footer-box")) - "copyleft 2015 GuixSD " - (a (@ (href "/software/guix/contribute/") - (class "hlink-yellow")) - " Contributors") - ". Made with " - (span (@ (class "metta")) "♥") - " by humans.")))) + `(html (@ (lang "en")) + ,(html-page-header "Packages") + (body + ,(html-page-description) + ,(html-page-links) + (div (@ (id "content-box")) + (article + (h1 "Packages") + (p "The Guix System Distribution provides 1,500+ packages +transparently " + (a (@ (href "http://hydra.gnu.org/jobset/gnu/master#tabs-status")) + "available as pre-built binaries") + ". This is a complete lists of the packages. Our " + (a (@ (href "http://hydra.gnu.org/jobset/gnu/master")) + "continuous integration system") + " shows their current build status."))) + ,(html-page-footer)))) diff --git a/website/www/shared.scm b/website/www/shared.scm new file mode 100644 index 0000000..8d21932 --- /dev/null +++ b/website/www/shared.scm @@ -0,0 +1,65 @@ +(define-module (www shared) + #:use-module (www shared) + #:export (html-page-header + html-page-description + html-page-links + html-page-footer)) + +(define (html-page-header title) + `(head (meta (@ (charset "utf-8"))) + (meta (@ (name "author") + (content "GuixSD Contributors"))) + (meta (@ (name "description") + (content + "GuixSD is GNU's advanced system distribution. GNU is an +operating system which respects the freedom of computer users. You are free to +run the system for any purpose, study how it works, improve it, and share it +with the whole world."))) + (meta (@ (name "keywords") + (content + "GNU, FSF, Free Software Foundation, Linux, Emacs, GCC, +Unix, Free Software, Libre Software, Operating System, GNU Kernel, GNU Hurd, +GUix Package Manager, Guile Scheme, Functional package management"))) + (meta (@ (name "viewport") + (content "width=device-width, initial-scale=1.0"))) + (link (@ (type "text/css") + (rel "stylesheet") + (href "/software/guix/static/base/css/base.css"))) + (link (@ (type "text/css") + (rel "stylesheet") + (href "/software/guix/static/base/css/index.css"))) + (link (@ (type "image/png") + (rel "icon") + (href "/software/guix/static/base/img/favicon.png"))) + (link (@ (rel "license") (href "Pending..."))) + (title ,(string-append title " - GuixSD")))) + +(define (html-page-description) + `(div (@ (class "message-box msg-info")) + (span (@ (class "msg-label")) "Note ") + "The Guix System Distribution (GuixSD) is alpha software. This means it +is not production-ready. It may contain bugs and lack important features. But +more than a disclaimer, this is an invitation to join us in improving it. See " + (a (@ (href "/software/guix/contribute/")) "Contributing") + ", for more information. We hope you can soon switch to GuixSD without +fear. ")) + +(define (html-page-links) + `(div (@ (id "header-box")) + (a (@ (id "logo") (href "/software/guix/")) + (img (@ (src "/software/guix/static/base/img/GuixSD-logo.png") + (alt "GuixSD")))) + (ul (@ (id "site-nav")) + (li (a (@ (href "/software/guix/download/")) "Download")) + (li (a (@ (href "/software/guix/package-list.html")) "Packages")) + (li (a (@ (href "/software/guix/help/")) "Help")) + (li (a (@ (href "/software/guix/contribute/")) "Contribute")) + (li (a (@ (href "/software/guix/donate/")) "Donate")) + (li (a (@ (href "/software/guix/about/")) "About"))))) + +(define (html-page-footer) + `(div (@ (id "footer-box")) + "copyleft 2015 GuixSD " + (a (@ (href "/software/guix/contribute/") (class "hlink-yellow")) + "Contributors") + ". Made with " (span (@ (class "metta")) "♥") " by humans.")) -- 2.2.1