diff options
Diffstat (limited to 'gnu/packages/books.scm')
-rw-r--r-- | gnu/packages/books.scm | 108 |
1 files changed, 107 insertions, 1 deletions
diff --git a/gnu/packages/books.scm b/gnu/packages/books.scm index ada2cfe060..75ef1620cf 100644 --- a/gnu/packages/books.scm +++ b/gnu/packages/books.scm @@ -1,7 +1,17 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2023, 2024, 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com> +;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> +;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Mark H Weaver <mhw@netris.org> +;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2020 Marius Bakke <marius@gnu.org> +;;; Copyright © 2022 jgart <jgart@dismail.de> ;;; Copyright © 2023 Adam Faiz <adam.faiz@disroot.org> +;;; Copyright © 2023 Maxim Cournoyer <maxim@guixotic.coop> +;;; Copyright © 2023 宋文武 <iyzsong@envs.net> +;;; Copyright © 2023-2025 Artyom V. Poptsov <poptsov.artyom@gmail.com> ;;; Copyright © 2025 Gabriel Santos <gabrielsantosdesouza@disroot.org> +;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,7 +31,9 @@ (define-module (gnu packages books) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) + #:use-module (guix deprecation) #:use-module (guix download) #:use-module (guix gexp) #:use-module (guix git-download) @@ -50,11 +62,105 @@ #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages tex) + #:use-module (gnu packages texinfo) #:use-module (gnu packages texlive) #:use-module (gnu packages version-control) #:use-module (gnu packages webkit) #:use-module (gnu packages xml)) +(define-public book-faif + (package + (name "book-faif") + (version "2.0") + (source (origin + (method url-fetch) + (uri (string-append "https://www.fsf.org/faif/faif-" version + ".tar.bz2")) + (sha256 + (base32 + "0qf14d0n6k1dn9z0fdnx9qkhn4iq685xd443w7l7w54bm931p7dw")))) + (build-system copy-build-system) + (native-inputs + (list (texlive-local-tree + (list texlive-caption + texlive-endnotes + texlive-etoolbox + texlive-fncychap + texlive-helvetic + texlive-times + texlive-ucs)))) + (arguments + (list + #:install-plan #~'(("faif-2.0.pdf" "share/doc/faif/")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'writable-texmfvar + ;; Generating font shapes require a writable TEXMFVAR directory. + (lambda _ (setenv "TEXMFVAR" "/tmp"))) + (add-before 'install 'build + (lambda _ + (invoke "pdflatex" "faif-2.0.tex")))))) + (home-page "https://www.fsf.org/faif") + (synopsis "Free as in Freedom (2.0)") + (description + "In 2002, Sam Williams wrote Free as in Freedom, a biography of Richard +M. Stallman. In its epilogue, Williams expressed hope that choosing to +distribute his book under the GNU Free Documentation License would enable and +encourage others to share corrections and their own perspectives through +modifications to his work. Free as in Freedom (2.0) is Stallman's revision of +the original biography. While preserving Williams's viewpoint, it includes +factual corrections and extensive new commentary by Stallman, as well as new +prefaces by both authors written for the occasion. It is a rare kind of +biography, where the reader has the benefit of both the biographer's original +words and the subject's response.") + (license license:fdl1.3+))) + +(define-public book-sicp + (let ((commit "bda03f79d6e2e8899ac2b5ca6a3732210e290a79") + (revision "3")) + (package + (name "book-sicp") + (version (git-version "20180718" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sarabander/sicp") + (commit commit))) + (sha256 + (base32 + "0mng7qrj2dvssyffr9ycnf4a5k0kadp4dslq7mc5bhzq1qxyjs2w")) + (file-name (git-file-name name version)))) + (build-system copy-build-system) + (native-inputs (list gzip texinfo)) + (arguments + (list #:install-plan ''(("html" "share/doc/sicp/") + ("sicp.info" "share/info/")) + #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'remove-obsolete-commands + (lambda _ + ;; Reported upstream: + ;; https://github.com/sarabander/sicp/issues/46. + (substitute* "sicp-pocket.texi" + (("@setshortcontentsaftertitlepage") + "")))) + (add-before 'install 'build + (lambda _ + (invoke "makeinfo" "--no-split" + "--output=sicp.info" + "sicp-pocket.texi")))))) + (home-page "https://sarabander.github.io/sicp") + (synopsis "Structure and Interpretation of Computer Programs") + (description "Structure and Interpretation of Computer Programs (SICP) is +a textbook aiming to teach the principles of computer programming. + +Using Scheme, a dialect of the Lisp programming language, the book explains +core computer science concepts such as abstraction in programming, +metalinguistic abstraction, recursion, interpreters, and modular programming.") + (license license:cc-by-sa4.0)))) + +;; It may be removed after 2025-12-19. +(define-deprecated/public-alias sicp book-sicp) + (define-public book-sparc (package (name "book-sparc") |