[PATCH 0/6] Fix name and dependencies of a few Texlive packages

  • Done
  • quality assurance status badge
Details
2 participants
  • Nicolas Goaziou
  • Simon Tournier
Owner
unassigned
Submitted by
Nicolas Goaziou
Severity
normal
N
N
Nicolas Goaziou wrote on 31 Mar 2023 17:30
(address . guix-patches@gnu.org)
20230331153041.607320-1-mail@nicolasgoaziou.fr
This patch set normalizes naming scheme of a few Texlive packages, build them from source and set appropriate dependencies.

Nicolas Goaziou (6):
gnu: Add texlive-ncctools.
gnu: Add texlive-relsize.
gnu: texlive-latex-bigfoot: Replace with texlive-bigfoot.
gnu: texlive-latex-acronym: Replace with texlive-acronym.
gnu: texlive-latex-totcount: Replace with texlive-totcount.
gnu: texlive-latex-lastpage: Replace with texlive-lastpage.

gnu/packages/tex.scm | 328 ++++++++++++++++++++++++++++++++-----------
1 file changed, 244 insertions(+), 84 deletions(-)


base-commit: 65afc8fa44051da2c5acaa230af74fa0a99cbbd5
--
2.39.2
N
N
Nicolas Goaziou wrote on 31 Mar 2023 17:32
[PATCH 1/6] gnu: Add texlive-ncctools.
(address . 62570@debbugs.gnu.org)
20230331153226.607420-1-mail@nicolasgoaziou.fr
* gnu/packages/tex.scm (texlive-ncctools): New variable.
---
gnu/packages/tex.scm | 64 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 64 insertions(+)

Toggle diff (77 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index b40e72c582..23f437412c 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -8844,6 +8844,70 @@ (define-public texlive-latex-ms
@end itemize\n")
(license license:lppl1.3c+)))
+(define-public texlive-ncctools
+ (let ((template (simple-texlive-package
+ "texlive-ncctools"
+ (list "doc/latex/ncctools/"
+ "source/latex/ncctools/"
+ "tex/latex/ncctools/")
+ (base32
+ "1g3fpvrg6kx2ns97ih6iwdk0rcbxlv043x8rdppxdincl2lvbdx5"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ #t) "latex/ncctools")
+ ((#:build-targets _ '()) '(list "ncctools.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "source/latex/ncctools/")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-amsmath texlive-latex-graphics))
+ (home-page "https://ctan.org/pkg/ncctools")
+ (synopsis "Collection of general packages for LaTeX")
+ (description
+ "The NCCtools bundle contains many packages for general use under LaTeX;
+many are also used by NCC LaTeX. The bundle includes tools for:
+@itemize
+@item executing commands after a package is loaded;
+@item watermarks;
+@item counter manipulation;
+@item improvements to the @code{description} environment;
+@item hyphenation of compound words;
+@item new levels of footnotes;
+@item space-filling patterns;
+@item ``poor man's'' Black Board Bold symbols;
+@item alignment of the content of a box; use comma as decimal separator;
+@item boxes with their own crop marks;
+@item page cropmarks;
+@item improvements to fancy headers;
+@item float ``styles'', mini floats, side floats;
+@item manually marked footnotes;
+@item extension of amsmath;
+@item control of paragraph skip;
+@item an envelope to the @code{graphicx} package;
+@item dashed and multiple rules;
+@item alternative techniques for declarations of sections, captions, and
+toc-entries;
+@item generalised text-stretching;
+@item generation of new theorem-like environments;
+@item control of the text area;
+@item centered page layouts;
+@item and un-numbered top-level section.
+@end itemize")
+ (license license:lppl))))
+
(define-public texlive-numprint
(let ((template
(simple-texlive-package
--
2.39.2
N
N
Nicolas Goaziou wrote on 31 Mar 2023 17:32
[PATCH 2/6] gnu: Add texlive-relsize.
(address . 62570@debbugs.gnu.org)
20230331153226.607420-2-mail@nicolasgoaziou.fr
* gnu/packages/tex.scm (texlive-relsize): New variable.
---
gnu/packages/tex.scm | 17 +++++++++++++++++
1 file changed, 17 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 23f437412c..0f87dc4a77 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -12132,6 +12132,23 @@ (define-public texlive-ragged2e
lower-case, prevent hyphenation altogether).")
(license license:lppl1.3c)))
+(define-public texlive-relsize
+ (package
+ (inherit (simple-texlive-package
+ "texlive-relsize"
+ (list "doc/latex/relsize/"
+ "tex/latex/relsize/")
+ (base32
+ "07g9wqxsh3a9rmfbppaqhyic82a1i1habizaf4hpdi3246w6nnby")
+ #:trivial? #t))
+ (home-page "https://ctan.org/pkg/relsize")
+ (synopsis "Set the font size relative to the current font size")
+ (description
+ "The basic command of the package is @code{\\relsize}, whose argument is
+a number of @code{\\magsteps} to change size; from this are defined commands
+@code{\\larger}, @code{\\smaller}, @code{\\textlarger}, etc.")
+ (license license:public-domain)))
+
(define-public texlive-everysel
(package
(inherit
--
2.39.2
N
N
Nicolas Goaziou wrote on 31 Mar 2023 17:32
[PATCH 3/6] gnu: texlive-latex-bigfoot: Replace with texlive-bigfoot.
(address . 62570@debbugs.gnu.org)
20230331153226.607420-3-mail@nicolasgoaziou.fr
* gnu/packages/tex.scm (texlive-bigfoot): New variable.
(texlive-latex-bigfoot): Deprecate package.
(texlive-pstool): Use new variable.
---
gnu/packages/tex.scm | 82 ++++++++++++++++++++++++++------------------
1 file changed, 48 insertions(+), 34 deletions(-)

Toggle diff (103 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 0f87dc4a77..d78b1672f1 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -4865,40 +4865,54 @@ (define-public texlive-latex-amsrefs
conjunction with BibTeX or as a replacement for BibTeX.")
(license license:lppl1.3+)))
-(define-public texlive-latex-bigfoot
- (package
- (name "texlive-latex-bigfoot")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "bigfoot"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "092g8alnsdwlgl1isdnqrr32l161994295kadr1n05d81xgj5wnv"))))
- (build-system texlive-build-system)
- (arguments
- '(#:tex-directory "latex/bigfoot"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'remove-generated-file
- (lambda _
- (for-each delete-file (find-files "." "\\.drv$"))
- #t)))))
- (home-page "https://www.ctan.org/pkg/bigfoot")
- (synopsis "Footnotes for critical editions")
- (description
- "This package aims to provide a one-stop solution to requirements for
-footnotes. It offers: Multiple footnote apparatus superior to that of
+(define-public texlive-bigfoot
+ (let ((template (simple-texlive-package
+ "texlive-bigfoot"
+ (list "doc/latex/bigfoot/"
+ "source/latex/bigfoot/"
+ "tex/latex/bigfoot/")
+ (base32
+ "140b4bbjcgajd1flznmi3ga6lx5pna2nxybr2dqm9515lny8gwf0"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ #t) "latex/bigfoot")
+ ((#:build-targets _ '()) '(list "bigfoot.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "source/latex/bigfoot/")))
+ (add-after 'chdir 'delete-drv-files
+ (lambda _
+ (for-each delete-file (find-files "." "\\.drv$"))))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-etex texlive-ncctools))
+ (home-page "https://ctan.org/pkg/bigfoot")
+ (synopsis "Footnotes for critical editions")
+ (description
+ "The package aims to provide a one-stop solution to requirements for
+footnotes. It offers multiple footnote apparatus superior to that of
@code{manyfoot}. Footnotes can be formatted in separate paragraphs, or be run
-into a single paragraph (this choice may be selected per footnote series);
-Things you might have expected (such as @code{\\verb}-like material in
-footnotes, and color selections over page breaks) now work. Note that the
-majority of the bigfoot package's interface is identical to that of
-@code{manyfoot}; users should seek information from that package's
-documentation. The bigfoot bundle also provides the @code{perpage} and
-@code{suffix} packages.")
- (license license:gpl2+)))
+into a single paragraph. Note that the majority of the @code{bigfoot}
+package's interface is identical to that of @code{manyfoot}; users should seek
+information from that package's documentation.
+
+The @code{bigfoot} bundle also provides the @code{perpage} and @code{suffix}
+packages.")
+ (license license:gpl2+))))
+
+(define-deprecated-package texlive-latex-bigfoot texlive-bigfoot)
(define-public texlive-latex-blindtext
(package
@@ -5342,7 +5356,7 @@ (define-public texlive-pstool
"12clzcw2cl7g2chr2phgmmiwxw4859cln1gbx1wgp8bl9iw590nc")
#:trivial? #t))
(propagated-inputs
- (list texlive-latex-bigfoot ; for suffix
+ (list texlive-bigfoot ; for suffix
texlive-filemod
texlive-latex-graphics
texlive-latex-ifplatform
--
2.39.2
N
N
Nicolas Goaziou wrote on 31 Mar 2023 17:32
[PATCH 4/6] gnu: texlive-latex-acronym: Replace with texlive-acronym.
(address . 62570@debbugs.gnu.org)
20230331153226.607420-4-mail@nicolasgoaziou.fr
* gnu/packages/tex.scm (texlive-latex-acronym): Deprecate package.
(texlive-acronym): New variable.
---
gnu/packages/tex.scm | 59 +++++++++++++++++++++++++++++---------------
1 file changed, 39 insertions(+), 20 deletions(-)

Toggle diff (74 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index d78b1672f1..94bb47d626 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -8171,28 +8171,47 @@ (define-public texlive-latex-preview
files.")
(license license:gpl3+)))
-(define-public texlive-latex-acronym
- (package
- (name "texlive-latex-acronym")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "acronym"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "09pd4wynksg1y1ddxnqbhk2dc185zw5nyi794d86n3qx8l014ijy"))))
- (build-system texlive-build-system)
- (arguments '(#:tex-directory "latex/acronym"))
- (home-page "https://www.ctan.org/pkg/acronym")
- (synopsis "Expand acronyms at least once")
- (description
- "This package ensures that all acronyms used in the text are spelled out
-in full at least once. It also provides an environment to build a list of
+(define-public texlive-acronym
+ (let ((template (simple-texlive-package
+ "texlive-acronym"
+ (list "doc/latex/acronym/"
+ "source/latex/acronym/"
+ "tex/latex/acronym/")
+ (base32
+ "0p2sws3qy7wv0v6bsy6c5j36n9s1ps7b1z7dmg1370schrjpqnfh"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ #t) "latex/acronym")
+ ((#:build-targets _ '()) '(list "acronym.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "source/latex/acronym/")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-bigfoot texlive-relsize texlive-xstring))
+ (home-page "https://ctan.org/pkg/acronym")
+ (synopsis "Expand acronyms at least once")
+ (description
+ "This package ensures that all acronyms used in the text are spelled
+out in full at least once. It also provides an environment to build a list of
acronyms used. The package is compatible with PDF bookmarks. The package
-requires the suffix package, which in turn requires that it runs under
+requires the @code{suffix} package, which in turn requires that it runs under
e-TeX.")
- (license license:lppl1.3+)))
+ (license license:lppl1.3+))))
+
+(define-deprecated-package texlive-latex-acronym texlive-acronym)
(define-public texlive-pdftex
(package
--
2.39.2
N
N
Nicolas Goaziou wrote on 31 Mar 2023 17:32
[PATCH 5/6] gnu: texlive-latex-totcount: Replace with texlive-totcount.
(address . 62570@debbugs.gnu.org)
20230331153226.607420-5-mail@nicolasgoaziou.fr
* gnu/packages/tex.scm (texlive-totcount): New variable.
(texlive-latex-totcount): Deprecate package.
---
gnu/packages/tex.scm | 53 ++++++++++++++++++++++++++++++++------------
1 file changed, 39 insertions(+), 14 deletions(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 94bb47d626..2e31d74498 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -12611,22 +12611,47 @@ (define-public texlive-substr
@end itemize")
(license license:lppl1.0+)))
-(define-public texlive-latex-totcount
- (package
- (inherit (simple-texlive-package
- "texlive-latex-totcount"
- (list "doc/latex/totcount/"
- "tex/latex/totcount/")
- (base32 "0z4mijyk3z7555q8da41aiji602plis5z261z4rr1fl8sndhnhn1")
- #:trivial? #t))
- (build-system texlive-build-system)
- (home-page "https://ctan.org/pkg/totcount")
- (synopsis "Find the last value of a counter")
- (description
- "This package records the value that was last set, for any counter of
+(define-public texlive-totcount
+ (let ((template (simple-texlive-package
+ "texlive-totcount"
+ (list "doc/latex/totcount/"
+ "source/latex/totcount/"
+ "tex/latex/totcount/")
+ (base32
+ "1rj9ncip5h2cbdljjqwxqsg14pb4mimzhz290q872n32w7rxkp28"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (build-system texlive-build-system)
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ #t) "latex/totcount")
+ ((#:tex-format _ #t) "latex")
+ ((#:build-targets _ '()) '(list "totcount.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "source/latex/totcount/")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-latex-graphics))
+ (home-page "https://ctan.org/pkg/totcount")
+ (synopsis "Find the last value of a counter")
+ (description
+ "This package records the value that was last set, for any counter of
interest. Since most such counters are simply incremented when they are
changed, the recorded value will usually be the maximum value.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-latex-totcount texlive-totcount)
(define-public texlive-xetex
(package
--
2.39.2
N
N
Nicolas Goaziou wrote on 31 Mar 2023 17:32
[PATCH 6/6] gnu: texlive-latex-lastpage: Replace with texlive-lastpage.
(address . 62570@debbugs.gnu.org)
20230331153226.607420-6-mail@nicolasgoaziou.fr
* gnu/packages/tex.scm (texlive-lastpage): New variable.
(texlive-latex-lastpage): Deprecate variable.
---
gnu/packages/tex.scm | 53 +++++++++++++++++++++++++++++++-------------
1 file changed, 37 insertions(+), 16 deletions(-)

Toggle diff (67 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 2e31d74498..f26b62a155 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -12469,23 +12469,44 @@ (define-public texlive-latex-hyphenat
fonts.")
(license license:lppl1.3c+)))
-(define-public texlive-latex-lastpage
- (package
- (inherit (simple-texlive-package
- "texlive-latex-lastpage"
- (list "doc/latex/lastpage/"
- "tex/latex/lastpage/")
- (base32 "0q6x743b8fkw9r82lrxy49f9xsg81bffynwvpnvpnp3h4mkafvdb")
- #:trivial? #t))
- (build-system texlive-build-system)
- (home-page "https://ctan.org/pkg/lastpage")
- (synopsis "Reference last page for Page N of M type footers")
- (description
- "This package enables referencing the number of pages in a LaTeX document
-through the introduction of a new label which can be referenced like
+(define-public texlive-lastpage
+ (let ((template (simple-texlive-package
+ "texlive-lastpage"
+ (list "doc/latex/lastpage/"
+ "source/latex/lastpage/"
+ "tex/latex/lastpage/")
+ (base32
+ "1cmzl0jkid4w60bjlyxrc5bynbc3lwq5nr77rsip0q9hprxykxks"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ #t) "latex/lastpage")
+ ((#:build-targets _ '()) '(list "lastpage.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "source/latex/lastpage/")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://ctan.org/pkg/lastpage")
+ (synopsis "Reference last page for Page N of M type footers")
+ (description
+ "This package enables referencing the number of pages in a LaTeX
+document through the introduction of a new label which can be referenced like
@code{\\pageref{LastPage}} to give a reference to the last page of a document.
-It is particularly useful in the page footer that says: Page N of M.")
- (license license:lppl1.3c+)))
+It is particularly useful in the page footer that says: @samp{Page N of M}.")
+ (license license:lppl1.3+))))
+
+(define-deprecated-package texlive-latex-lastpage texlive-lastpage)
(define-public texlive-latex-tabto-ltx
(package
--
2.39.2
S
S
Simon Tournier wrote on 7 Apr 2023 18:48
Re: [bug#62570] [PATCH 3/6] gnu: texlive-latex-bigfoot: Replace with texlive-bigfoot.
87o7nzk5a7.fsf@gmail.com
Hi Nicolas, all,

Thanks, the series LGTM.

In the context of discussion about SWH coverage, see [1,2,3,4], this
change is very welcome because it factorize the package ’source’ as more
or less we discussed in [4].



Other said, that’s said… The good ol’ svn-fetch,

Toggle quote (4 lines)
> - (source (origin
> - (method svn-fetch)
> - (uri (texlive-ref "latex" "bigfoot"))

is replaced by ’simple-texlive-package’,

Toggle quote (10 lines)
> + (let ((template (simple-texlive-package
> + "texlive-bigfoot"
> + (list "doc/latex/bigfoot/"
> + "source/latex/bigfoot/"
> + "tex/latex/bigfoot/")
> + (base32
> + "140b4bbjcgajd1flznmi3ga6lx5pna2nxybr2dqm9515lny8gwf0"))))
> + (package
> + (inherit template)

However, it goes from this,

$ tree -L 6 $(guix build --no-grafts texlive-latex-bigfoot -S)
/gnu/store/z9kc9qbg40nl0azivpmfmhrnqb6dnmqm-texlive-latex-bigfoot-59745-checkout
??? bigfoot.drv
??? bigfoot.dtx
??? bigfoot.ins
??? perpage.drv
??? perpage.dtx
??? suffix.drv
??? suffix.dtx

0 directories, 7 files

to that,

$ tree -L 6 $(./pre-inst-env guix build --no-grafts texlive-latex-bigfoot -S)
guix build: package 'texlive-latex-bigfoot' has been superseded by 'texlive-bigfoot'
/gnu/store/rws86c5hi1r25f14h95hiqzgcw8rbir2-texlive-bigfoot-59745-checkout
??? doc
?   ??? latex
?   ??? bigfoot
?   ??? bigfoot.pdf
?   ??? COPYING
?   ??? Makefile
?   ??? perpage.pdf
?   ??? README
?   ??? suffix.pdf
??? source
?   ??? latex
?   ??? bigfoot
?   ??? bigfoot.drv
?   ??? bigfoot.dtx
?   ??? bigfoot.ins
?   ??? perpage.drv
?   ??? perpage.dtx
?   ??? suffix.drv
?   ??? suffix.dtx
??? tex
??? latex
??? bigfoot
??? bigfoot.sty
??? perpage.sty
??? suffix.sty

9 directories, 16 files


Here, I have two questions (unrelated to the patch series ;-)):

1. Does it make sense to keep the PDF and .sty files?
2. Which of the both is the closest of upstream structure?

Assuming SWH ingested TUG and other related TeX sources, which is
still WIP AFAIK, it would be simpler if we store an identifier
(swhid or others) that we can query via SWH API without parsing and
rebuild from their content the files we need for the checksum.


Cheers,
simon
N
N
Nicolas Goaziou wrote on 7 Apr 2023 20:01
(name . Simon Tournier)(address . zimon.toutoune@gmail.com)
878rf3mv13.fsf@nicolasgoaziou.fr
Hello,
Simon Tournier <zimon.toutoune@gmail.com> writes:
Toggle quote (1 lines)
> Thanks, the series LGTM.
Thank you for the feedback!
Toggle quote (51 lines)
> However, it goes from this,
>
> $ tree -L 6 $(guix build --no-grafts texlive-latex-bigfoot -S)
> /gnu/store/z9kc9qbg40nl0azivpmfmhrnqb6dnmqm-texlive-latex-bigfoot-59745-checkout
> ??? bigfoot.drv
> ??? bigfoot.dtx
> ??? bigfoot.ins
> ??? perpage.drv
> ??? perpage.dtx
> ??? suffix.drv
> ??? suffix.dtx
>
> 0 directories, 7 files
>
> to that,
>
> $ tree -L 6 $(./pre-inst-env guix build --no-grafts texlive-latex-bigfoot -S)
> guix build: package 'texlive-latex-bigfoot' has been superseded by 'texlive-bigfoot'
> /gnu/store/rws86c5hi1r25f14h95hiqzgcw8rbir2-texlive-bigfoot-59745-checkout
> ??? doc
> ?   ??? latex
> ?   ??? bigfoot
> ?   ??? bigfoot.pdf
> ?   ??? COPYING
> ?   ??? Makefile
> ?   ??? perpage.pdf
> ?   ??? README
> ?   ??? suffix.pdf
> ??? source
> ?   ??? latex
> ?   ??? bigfoot
> ?   ??? bigfoot.drv
> ?   ??? bigfoot.dtx
> ?   ??? bigfoot.ins
> ?   ??? perpage.drv
> ?   ??? perpage.dtx
> ?   ??? suffix.drv
> ?   ??? suffix.dtx
> ??? tex
> ??? latex
> ??? bigfoot
> ??? bigfoot.sty
> ??? perpage.sty
> ??? suffix.sty
>
> 9 directories, 16 files
>
>
> Here, I have two questions (unrelated to the patch series ;-)):
>
> 1. Does it make sense to keep the PDF and .sty files?
PDF files are the documentation. They belong to the "doc" output. It
seems useful to allow users to get package definitions, too.
The ".sty" files are the actual package, i.e., what gets loaded when you
insert \require{bigfoot}. IOW, the previous package definition was
utterly broken since it didn't provide any usable code anyway.
Unfortunately, there are other old TeXLive packages in this very same
sad situation.
What might be removed, however, is the "source" part. As it was already
suggested on this ML (I cannot find the reference, sorry), you can
retrieve source with "guix build -S" already, so it is not terribly
useful to also put it in the store. OTOH, I think it doesn't free much
space.
Toggle quote (1 lines)
> 2. Which of the both is the closest of upstream structure?
The new package checkout matches exactly the layout of the full TeXLive
distribution.
Regards,
--
Nicolas Goaziou
S
S
Simon Tournier wrote on 8 Apr 2023 11:35
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)
867cum7m3x.fsf@gmail.com
Hi,

Thanks for your explanations.

On Fri, 07 Apr 2023 at 20:01, Nicolas Goaziou <mail@nicolasgoaziou.fr> wrote:

Toggle quote (3 lines)
> Unfortunately, there are other old TeXLive packages in this very same
> sad situation.

Well, one after the other, they will be converted. :-)


Toggle quote (5 lines)
>> 2. Which of the both is the closest of upstream structure?
>
> The new package checkout matches exactly the layout of the full TeXLive
> distribution.

Now, I have to check if this content is registered by Software
Heritage. :-)

Cheers,
simon
N
N
Nicolas Goaziou wrote on 8 Apr 2023 15:07
(name . Simon Tournier)(address . zimon.toutoune@gmail.com)
87bkjyjzen.fsf@nicolasgoaziou.fr
Hello,

Simon Tournier <zimon.toutoune@gmail.com> writes:

Toggle quote (7 lines)
> On Fri, 07 Apr 2023 at 20:01, Nicolas Goaziou <mail@nicolasgoaziou.fr> wrote:
>
>> Unfortunately, there are other old TeXLive packages in this very same
>> sad situation.
>
> Well, one after the other, they will be converted. :-)

Sure thing.

However, correcting myself, as my words were too strong in this
particular case, current "texlive-latex-bigfoot" is not exactly
"broken". Running "./pre-inst-env guix build texlive-latex-bigfoot"
generates the following layout:

/gnu/store/848cbycs3y9gqbc0c6giag1m7a53x32r-texlive-latex-bigfoot-59745
??? share
??? texmf-dist
??? tex
??? latex
??? bigfoot
??? bigfoot.drv
??? bigfoot.sty
??? perpage.drv
??? perpage.sty
??? suffix.drv
??? suffix.sty
6 directories, 6 files

So, ".sty" files are indeed properly installed. There is no
documentation, though. Also, source files are not kept in the store.

There are two approaches going on here. `simple-texlive-package' tries
to provide a tessellation of the full texlive, i.e., if you install
(assuming they are defined in Guix) every standalone texlive package,
you will get the exact full texlive distribution, whereas
`texlive-ref' + `texlive-build-system' tries to generate a minimal (a
bit too minimal considering missing documentation) working system.
I think the old way is error prone.

So, do we (not only the two of us, obviously) agree on the
`simple-texlive-package' approach? If so, what should we do about
"source"?

Regards,
--
Nicolas Goaziou
N
N
Nicolas Goaziou wrote on 18 Apr 2023 15:30
(name . Simon Tournier)(address . zimon.toutoune@gmail.com)
87y1mpjp0u.fsf@nicolasgoaziou.fr
Hello,

Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:

Toggle quote (4 lines)
> So, do we (not only the two of us, obviously) agree on the
> `simple-texlive-package' approach? If so, what should we do about
> "source"?

I applied the whole set. The question above is still open, but I'm
closing this particular report for now.

Thank you for your input.

Regards,
--
Nicolas Goaziou
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 62570@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 62570
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch