summaryrefslogtreecommitdiff
path: root/doc/build.scm
AgeCommit message (Collapse)Author
2025-07-10nls: Update translations.Florian Pelz
* po/doc/guix-cookbook.it.po: New file. * po/doc/guix-manual.it.po: New file. * po/doc/local.mk: Add 'it' manual, cookbook. * po/doc/po4a.cfg (po4a_langs): Add 'it'. * po/guix/el.po: New file. * po/guix/LINGUAS: Add 'el'. * doc/local.mk: Add 'it' manual, cookbook. * doc/htmlxref.cnf: Update URLs for manual, cookbook. * doc/build.scm (%cookbook-languages, %manual-languages): Add 'it'. * doc/guix.texi (Top): Mention 'it' manual. * doc/guix-cookbook.texi (Top): Mention 'it' cookbook. Change-Id: I46023fa4b2dbe9db5227292823b4df9e41c3cee0
2025-07-09doc: Update weblate URL.Julien Lepiller
* doc/build.scm (stylized-html): Update URL from fedora to codeberg's Weblate. * doc/contributing.texi: idem. * doc/guix-cookbook.texi: idem. * doc/guix.texi: idem. Change-Id: I13729a73f94738c9c336a067058020549f2640d6
2025-07-09doc: Fix URL of ‘language-picker.svg’.Ludovic Courtès
Fixes a regression introduced in 824d46a2fee18111a2a80f7805404a1ea58134c7. * doc/build.scm (stylized-html)[build]: Avoid double leading slash for ‘language-picker.svg’. Change-Id: I0817949862f061dbbe04352bda1e479347015c84
2025-07-09doc: Add links to versions and variants as a drop-down menu.Ludovic Courtès
* doc/build.scm (%latest-guix-version): New variable. (stylized-html): Add #:latest-version. [build](menu-item-separator): New variable. (version-menu-items, input-file-language): New procedures. (stylized-html, process-html): Add ‘language’ parameter. Update callers. Change-Id: If7cea2410802eec5af1d3c0407d5569250eb15ef
2025-07-09doc: Really honor ‘GUIX_WEB_SITE_URL’.Ludovic Courtès
This is useful when testing changes locally, so that CSS links point to the right place. * doc/build.scm (%web-site-url): Default to /. (%manual-css-url): Honor ‘%web-site-url’. Change-Id: I8d885eba0fb8560dd7da7f21629c716a06c16b1f
2025-06-05doc: Use CSS from guix.gnu.org.Ludovic Courtès
This is a followup to commit 7bbc00ccf0315a68509cacd6a85e1ae8ae7f5e5d of guix/artwork.git. * doc/build.scm (%manual-css-url): New variable. (%makeinfo-html-options): Use it instead of www.gnu.org/…/manual.css. (stylized-html): Likewise for the default #:manual-css-url. Change-Id: I20bd3866383f8cbb4984993c15dbab483a17f6c9
2025-05-12doc: build.scm: Handle (current-source-directory) being #f.Christopher Baines
Since this seems to be the case when the devel manual is being built on bayfront. * doc/build.scm: Use the current working directory as a fallback if (current-source-directory) is #f, and log the value of root. Change-Id: Ic43fd05a4a0822d9efb935069850f0a8cadd80aa
2025-05-09doc: Fix building documentation on Berlin.Maxim Cournoyer
This reverts 4df6eda30f92dd09a7b5839514fab971b5633a0d ("gnu: Rename `texlive-updmap.cfg' into `texlive-local-tree'.") just for doc/build.scm. As the build farm uses 'guix' as provided by the guix-daemon; an updated to the guix package and reconfiguration of Berlin would be required to fix building the latest development manual. Use the deprecated texlive-updmap.cfg binding for now. * doc/build.scm (pdf-manual): Revert to use texlive-updmap.cfg for now. Change-Id: I133deaa7a345e711a99ea469ec6fecfde9c729de
2025-05-06gnu: Rename `texlive-updmap.cfg' into `texlive-local-tree'.Nicolas Goaziou
* doc/build.scm (pdf-manual): * doc/contributing.texi (Submitting Patches): * gnu/packages/algebra.scm (pari-gp): (giac): * gnu/packages/assembly.scm (asl): * gnu/packages/audio.scm (chow-tape-model): * gnu/packages/bioconductor.scm (r-biocstyle): * gnu/packages/bioinformatics.scm (discrover): (phyml): (velvet): * gnu/packages/chemistry.scm (yaehmop): * gnu/packages/chez.scm (chez-scheme-for-racket): (stex-bootstrap): (chez-web): (chez-sockets): * gnu/packages/cran.scm (r-papaja): (r-prereg): * gnu/packages/docbook.scm (dblatex): * gnu/packages/emacs-xyz.scm (emacs-auctex): * gnu/packages/engineering.scm (fastcap): * gnu/packages/finance.scm (optionmatrix): * gnu/packages/fsf.scm (book-faif): * gnu/packages/gettext.scm (po4a): (po4a-minimal): * gnu/packages/graphics.scm (mmg): * gnu/packages/graphviz.scm (dot2tex): * gnu/packages/guile-xyz.scm (emacsy): (guile-cv): * gnu/packages/lisp.scm (sbcl): * gnu/packages/maths.scm (cddlib): (gnuplot): (itpp): (octave): (suitesparse-amd): (suitesparse-camd): (suitesparse-cholmod): (suitesparse-klu): (suitesparse-ldl): (suitesparse-mongoose): (suitesparse-spex): (suitesparse-spqr): (suitesparse-umfpack): (hypre): * gnu/packages/music.scm (lilypond): * gnu/packages/ocaml.scm (unison): (ocaml-bibtex2html): * gnu/packages/pdf.scm (extractpdfmark): * gnu/packages/photo.scm (enblend-enfuse): * gnu/packages/plotutils.scm (asymptote): * gnu/packages/python-xyz.scm (python-numpy-documentation): (python-ipython-documentation): (python-pypandoc): * gnu/packages/radio.scm (gnuradio): (libosmo-dsp): * gnu/packages/scheme.scm (mit-scheme): * gnu/packages/security-token.scm (yubico-piv-tool): * gnu/packages/sphinx.scm (python-sphinx): (python-sphinx-5): * gnu/packages/statistics.scm (r-with-tests): (r-spams): * gnu/packages/tex.scm (texlive-local-tree): Renamed from… (texlive-updmap.cfg): … this. Deprecate the latter. (texlive-biblatex-philosophy): (texlive-bropd): (texlive-fontsize): (texlive-poetrytex): (texlive-reverxii): (texlive-stix): (texlive-suftesi): (texlive-thucoursework): (texlive-ulqda): (texlive-yathesis): (texlive-makecell): (texlive-robotarm): (texlive-bbold): (texlive-babel-romansh): (texlive-polyglossia): (texlive-innerscript): (teximpatient): (texlive-xkeyval): (texlive-arabxetex): (texlive-blox): (texlive-ecgdraw): (texlive-gradientframe): (texlive-everyhook): (texlive-actuarialangle): (texlive-actuarialsymbol): (texlive-autopdf): (texlive-etaremune): (texlive-extract): (texlive-forarray): (texlive-graphicx-psmin): (texlive-ha-prosper): (texlive-namespc): (texlive-newspaper): (texlive-powerdot): (texlive-recipecard): (texlive-show2e): (texlive-tablists): (texlive-ted): (texlive-xargs): (texlive-xpeek): * gnu/packages/xdisorg.scm (xforms): * gnu/packages/algebra.scm (gap): * gnu/packages/cpp.scm (jthread): * guix/lint.scm (check-inputs-should-be-native): Rename `texlive-updmap.cfg' into `texlive-local-tree'. Change-Id: I129280807c418e57acbcbda399545ab27a9e0a33
2025-05-03nls: Update translations.Florian Pelz
* po/guix/kab.po: New file. * po/guix/LINGUAS: Add 'kab'. * po/doc/guix-cookbook.es.po: New file. * po/doc/local.mk: Add 'es' cookbook. * doc/local.mk: Add 'es' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Add 'es'. * doc/guix-cookbook.texi (Top): Mention 'es' cookbook. Change-Id: I795563ee78c930248ff860a03d9ce970099429da
2025-02-28nls: Update translations.Florian Pelz
* po/doc/guix-cookbook.ru.po: New file. * po/doc/local.mk: Add 'ru' cookbook. * doc/local.mk: Add 'ru' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Add 'ru'. * doc/guix-cookbook.texi (Top): Mention 'ru' cookbook. Change-Id: I5d59db90e23facbacd2b7ebe4a0847d0c44eb709
2024-10-14doc: Refer to ‘iso-codes’, not ‘iso-codes/pinned’.Ludovic Courtès
This effectively reverts 8e5c8303a414719c19a597247674be87fd500d45, which was unnecessary in this case and would break when evaluating ‘doc/build.scm’ against a previous Guix revision where ‘iso-codes/pinned’ is unbound. * doc/build.scm (localization-helper-module): Use ‘iso-codes’ rather than ‘iso-codes/pinned’. Change-Id: I95497fa474fb5ce89c7d2fe9bf0925a0cd438763
2024-09-28gnu: iso-codes: Rename to iso-codes/pinned.Roman Scherer
* gnu/packages/iso-codes.scm (iso-codes): Rename to… (iso-codes/pinned): … this. * doc/build.scm, gnu/installer.scm, gnu/packages/fcitx.scm, gnu/packages/fcitx5.scm, gnu/packages/gnome.scm, gnu/packages/gstreamer.scm, gnu/packages/gtk.scm, gnu/packages/ibus.scm, gnu/packages/kde-frameworks.scm, gnu/packages/kde-plasma.scm, gnu/packages/mate.scm, gnu/packages/photo.scm, gnu/packages/video.scm: Adjust accordingly. Change-Id: Ia98fee15a27009583fee822cf411512727b1aa27 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-09-02doc: build: Handle when guile source is packed with zstd.Florian Pelz
* doc/build.scm (guile-manual): Also include zstd in PATH. Change-Id: Iff49825fe84121bff777ed45c03fb14af0a0e719
2024-06-03nls: Update translations.Florian Pelz
* po/doc/guix-cookbook.sv.po: New file. * po/doc/local.mk: Add 'sv' cookbook. * po/doc/po4a.cfg (po4a_langs): Add 'sv'. * doc/local.mk: Add 'sv' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Add 'sv'. * doc/guix-cookbook.texi (Top): Mention 'sv' cookbook. Change-Id: Ibfeb7254f583f1c8827e8c2756bbb02880bcba46
2024-04-01nls: Update translations.Florian Pelz
* po/guix/ar.po: New file. * po/guix/LINGUAS: Add 'ar'. * po/doc/guix-cookbook.pt_BR.po: New file. * po/doc/local.mk: Add 'pt_BR' cookbook. * doc/local.mk: Add 'pt_BR' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Add 'ko', 'pt_BR'. * doc/guix-cookbook.texi (Top): Mention 'ko', 'pt_BR' cookbook. Change-Id: Id1846ca100263b3fc1fa2ed52654c670270ee809
2024-03-15doc: build: Update paths to style sheets.Luis Felipe
The Guix website style sheets are now organized in themes. This change makes the documentation builder use the resources provided by a theme called "initial" (See https://issues.guix.gnu.org/69783). * doc/build.scm (syntax-highlighted-html): Update path to CSS. (html-manual-indexes): Likewise. (stylized-html): Likewise, and update path to language picker image. Change-Id: Ib2d51fcfdec42ad827add1ead1cfee4c9c4e65b7 Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2023-07-18gnu: Rationalize texlive-updmap.cfg and texlive-tiny inputs.Nicolas Goaziou
TEXLIVE-UPDMAP.CFG and TEXLIVE-TINY should only be used as native inputs. Also remove texlive packages already provided by them. * doc/build.scm (pdf-manual): * gnu/packages/algebra.scm (pari-gp): * gnu/packages/bioinformatics.scm (discrover): (phyml): (velvet): * gnu/packages/chemistry.scm (yaehmop): * gnu/packages/chez.scm (stex-bootstrap): (chez-web): (chez-sockets): * gnu/packages/cran.scm (r-prereg): * gnu/packages/docbook.scm (dblatex): * gnu/packages/emacs-xyz.scm (emacs-auctex): * gnu/packages/engineering.scm (fastcap): * gnu/packages/fsf.scm (book-faif): * gnu/packages/graphviz.scm (dot2tex): * gnu/packages/maths.scm (hypre): * gnu/packages/ocaml.scm (unison): (ocaml-bibtex2html): * gnu/packages/plotutils.scm (asymptote): * gnu/packages/python-xyz.scm (python-nbconvert): (python-pypandoc): * gnu/packages/radio.scm (gnuradio): (libosmo-dsp): * gnu/packages/statistics.scm (r-with-tests): * gnu/packages/tex.scm (texlive-makecmds): (texlive-innerscript): (teximpatient): (texlive-xkeyval): Remove texlive packages already provided by TEXLIVE-UPDMAP.CFG. Don't add TEXLIVE-TINY or TEXLIVE-UPDMAP.CFG as inputs.
2023-07-18gnu: Deprecate texlive-base in favor of texlive-scheme-basic.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-base): Deprecate variable. (texlive-updmap.cfg): Use default packages from now deprecated TEXLIVE-BASE. Also remove already implemented TODO. * doc/build.scm (pdf-manual): * gnu/packages/statistics.scm: Replace TEXLIVE-BASE with call to TEXLIVE-UPDMAP.CFG. * guix/profiles.scm (texlive-font-maps): Trigger TeX Live hook whenever a texlive package is included in the manifest.
2023-07-18gnu: texlive-tex-texinfo -> texlive-texinfo.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-texinfo): New variable. (texlive-tex-texinfo): Deprecate variable. * doc/build.scm (pdf-manual): * gnu/packages/finance.scm (optionmatrix): * gnu/packages/lisp.scm (sbcl): * gnu/packages/plotutils.scm (asymptote): * gnu/packages/scheme.scm (mit-scheme): * gnu/packages/xdisorg.scm (xforms): Use new name.
2023-07-18gnu: texlive-fonts-ec -> texlive-ec.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-ec): New variable. (texlive-fonts-ec): Deprecate variable. (lyx): (biber): * gnu/packages/python-xyz.scm (python-pypandoc): * gnu/packages/statistics.scm (r-with-tests): * doc/build.scm (pdf-manual): * gnu/packages/bioinformatics.scm (discrover): (phyml): (velvet): * gnu/packages/chemistry.scm (yaehmop): * gnu/packages/chez.scm (stex-bootstrap): * gnu/packages/ocaml.scm (unison): (ocaml-bibtex2html): * gnu/packages/plotutils.scm (asymptote): Use new name.
2023-05-25doc: Adjust HTML patterns to correctly process Texinfo 6.8 output.Ludovic Courtès
Prior to ceb5ef8347ae0e3015296f5c169ab903bac526a8, (@ (gnu packages texinfo) texinfo), which is what is used here, was pointing to version 6.7. * doc/build.scm (html-manual-identifier-index)[build](worthy-entry?): Adjust patterns for Texinfo 6.8. (syntax-highlighted-html)[build](syntax-highlight): Likewise.
2022-11-15doc: Build pt_BR manual.Ludovic Courtès
* doc/build.scm (%manual-languages): Add "pt_BR".
2022-06-15doc: Use a minimal texlive profile in build.scm.Maxim Cournoyer
* doc/build.scm (pdf-manual) <texinfo-profile>: New variable. <PATH>: Define in terms of the above. <GUIX_TEXMF>: New environment variable.
2022-04-08doc: Build an empty index if the manual is missing.Ludovic Courtès
That way, the "sk" index for 'guix-manual' is empty, because 'guix-manual' lacks an "sk" translation. * doc/build.scm (html-manual-identifier-index)[build](html-files): Gracefully handle 'scandir' returning #f.
2022-04-08doc: Allow different translations for 'guix-cookbook' and 'guix-manual'.Ludovic Courtès
Previously, 'guix-manual-text-domain' could be passed the cookbook language list as its second argument. Thus, it started failing when the set of cookbook languages was no longer a subset of the manual languages, starting with commit 93bfd4d9c7ba7055c19f02128491b3a98a180860, which removed "sk" from 'guix-manual' but kept it for 'guix-cookbook'. * doc/build.scm (%manual-languages, %cookbook-languages): New variables. (%languages): Use them. (guix-manual-text-domain): Give LANGUAGES a valid default value. (localization-helper-module): Remove optional argument to 'guix-manual-text-domain'.
2022-03-02doc: Publish the Slovak translation of the cookbook.Ludovic Courtès
* doc/build.scm (%languages): Add "sk" for "guix-cookbook" (it's currently at 57%).
2022-01-19doc: Normalize language codes in menu URLs.Ludovic Courtès
* doc/build.scm (stylized-html)[build](base-language-url): Add calls to 'normalize'.
2022-01-19doc: Make the HTML language menu disappear on narrow screens.Ludovic Courtès
* doc/build.scm (stylized-html)[build](navigation-bar): New procedure. (stylized-html): Use it.
2022-01-18doc: Add a language menu in the HTML manual.Ludovic Courtès
* doc/build.scm (stylized-html): New procedure. (html-manual): Use it.
2022-01-18doc: Factorize 'language-code->native-name'.Ludovic Courtès
* doc/build.scm (localization-helper-module)[content](translate): Add call to 'setenv' before 'write'. Remove use of 'with-language'. (language-code->native-name): New procedure. (html-manual-indexes)[build](top-level-index): Use it.
2022-01-18doc: Extract (localization) module.Ludovic Courtès
* doc/build.scm (localization-helper-module): New procedure. (html-manual-indexes)[build]: Use it. Remove use of GUILE-JSON-3.
2022-01-15doc: Remove now unnecessary workaround.Ludovic Courtès
* doc/build.scm (translated-texi-manuals): Turn into an alias for (@@ (guix self) translated-texi-manuals).
2021-12-13Merge branch 'master' into core-updates-frozenLudovic Courtès
2021-12-13doc: Handle '&nbsp' when syntax-highlighting HTML.Ludovic Courtès
* doc/build.scm (syntax-highlighted-html)[build](entity->string): Handle "&nbsp".
2021-10-31Merge remote-tracking branch 'origin/master' into core-updates-frozenEfraim Flashner
2021-10-28doc: Allow offloading of the expensive derivations.Ludovic Courtès
* doc/build.scm (translated-texi-manuals) (html-manual, pdf-manual): Pass #:local-build? #f.
2021-07-18Merge branch 'master' into core-updatesLudovic Courtès
2021-07-09doc: Build manual translations with 'guile-3.0-latest'.Ludovic Courtès
Fixes <https://bugs.gnu.org/47428>. Reported by Leo Famulari <leo@famulari.name>. * doc/build.scm (translated-texi-manuals): Explicitly use 'guile-3.0-latest'.
2021-05-09Merge branch 'master' into core-updatesMarius Bakke
Conflicts: gnu/local.mk gnu/packages/bioinformatics.scm gnu/packages/django.scm gnu/packages/gtk.scm gnu/packages/llvm.scm gnu/packages/python-web.scm gnu/packages/python.scm gnu/packages/tex.scm guix/build-system/asdf.scm guix/build/emacs-build-system.scm guix/profiles.scm
2021-04-20doc: Clarify further the distinction between the web-based manuals.Leo Famulari
As discussed on #guix IRC, several of us struggle to reliably choose the right option based on the old labels: https://logs.guix.gnu.org/guix/2021-04-20.log#182137 * doc/build.scm (html-manual-indexes): Try to distinguish between the two options more clearly.
2021-04-18doc: Build the French HTML cookbook.Julien Lepiller
* doc/build.scm (%languages): Add 'fr' cookbook translation.
2021-03-24Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2021-03-20doc: Remove the guile-lib/htmlprag-fixed package.Maxim Cournoyer
This hotfix package is no longer necessary as the ability to parameterize the way htmlprag tokenizes HTML was added in guile-lib 0.2.7. * doc/build.scm (guile-lib/htmlprag-fixed): Remove variable. (html-manual-identifier-index): Replace guile-lib/htmlprag-fixed by guile-lib, and make set the %strict-tokenizer? parameter to #t. (syntax-highlighted-html): Likewise.
2021-01-29gnu: Replace all uses of texlive-union by texlive-updmap.cfg.Maxim Cournoyer
* doc/build.scm (pdf-manual) Replace texlive-union by texlive-updmap.cfg. * gnu/packages/algebra.scm (pari-gp): Likewise. * gnu/packages/bioinformatics.scm (discrover, velvet): Likewise. * gnu/packages/chez.scm (chez-scheme, chez-web, chez-sockets): Likewise. * gnu/packages/docbook.scm (dblatex): Likewise. * gnu/packages/emacs-xyz.scm (emacs-auctex): Likewise. * gnu/packages/engineering.scm (fastcap): Likewise. * gnu/packages/guile-xyz.scm (emacsy, guile-cv): Likewise. * gnu/packages/lisp.scm (sbcl): Likewise. * gnu/packages/maths.scm (octave, hypre): Likewise. * gnu/packages/music.scm (lilypond): Likewise. * gnu/packages/plotutils.scm (asymptote): Likewise. * gnu/packages/python-xyz.scm (python-numpy-documentation) (python-matplotlib-documentation, python-ipython-documentation) (python-pypandoc): Likewise. * gnu/packages/radio.scm (gnuradio, libosmo-dsp): Likewise. * gnu/packages/scheme.scm (mit-scheme): Likewise. * gnu/packages/statistics.scm (r-with-tests): Likewise. * gnu/packages/tex.scm (simple-texlive-package) (texlive-xmltex, texlive-tiny, texlive-jadetex, teximpatient, lyx): Likewise.
2020-10-21doc: Cookbook links to /manual/devel, not /manual.Ludovic Courtès
Since the Cookbook is built from the 'master' branch, it should point to the manual from that same branch. * doc/build.scm (guix-mono-node-indexes, guix-split-node-indexes): Link to /manual/devel when %MANUAL is not "guix".
2020-10-19doc: Produce stylable HTML for @deftp, @deffn, etc.Ludovic Courtès
'makeinfo --help' uses <strong> and <em> for those entries. Replace that with CSS classes. * doc/build.scm (html-manual-identifier-index)[build]: Adjust to handle rewritten forms of <dt> entries. * doc/build.scm (syntax-highlighted-html)[build][syntax-highlight]: Handle <dt> forms and replace them. [highlight-definition, space?]: New procedures.
2020-10-17doc: Generate cross-references in code snippets to the Guile manual.Ludovic Courtès
Occurrences of 'list', 'cons', etc. in code snippets now link to the relevant section of the Guile manual. * doc/build.scm (guile-manual, %guile-manual-base-url) (guile-mono-node-indexes, guile-split-node-indexes): New variables. (for-all-languages, merge-index-alists): New procedures. <top level>: Rename 'mono-node-indexes' and 'split-node-indexes' to 'guix-mono-node-indexes' and 'guix-split-node-indexes' respectively. Add 'mono-node-indexes' and 'split-node-indexes' defined as calls to 'merge-index-alists'.
2020-10-17doc: Allow code snippets in the cookbook to link to the manual.Ludovic Courtès
Until now, only code snippets in the manual itself would contain links to identifier definitions. Now snippets in the cookbook also link to definitions in the manual. * doc/build.scm (html-manual): Add #:mono-node-indexes and #:multi-node-indexes and pass it to 'syntax-highlighted-html'. (pdf+html-manual): Likewise, and pass it to 'html-manual'. <top level>: Factorize 'version' and 'source'. Define 'guix-manual', 'mono-node-indexes', and 'split-node-indexes'. Pass #:mono-node-indexes and #:split-node-indexes to 'pdf+html-manual'.
2020-10-17doc: Move manual index creation to a separate derivation.Ludovic Courtès
* doc/build.scm (normalize-language-code, html-manual-identifier-index): New procedures. (syntax-highlighted-html): Add #:mono-node-indexes and #:split-node-indexes. [build](underscore-decode, anchor-id->key, collect-anchors): Remove. (language+node-anchors, mono-node-anchors, multi-node-anchors): New variables. Use them.