“guix import texlive keyval” fails

  • Done
  • quality assurance status badge
Details
3 participants
  • Ludovic Courtès
  • Ricardo Wurmus
  • zimoun
Owner
Somebody
Submitted by
Ludovic Courtès
Severity
normal
L
L
Ludovic Courtès wrote on 31 Aug 2017 12:11
“guix import texlive keyval ” fails
(address . bug-guix@gnu.org)
8760d4vyh0.fsf@gnu.org
Hello!

Here’s a couple of failures:

Toggle snippet (48 lines)
$ guix import texlive keyval
ni sekvas la redirektigon al 'https://ctan.org/xml/1.2/pkg/keyval'...
Backtrace:
8 (primitive-load "/gnu/store/xjwq4aprrrb43lvsgbydd0m7pxj5758b-guix-0.13.0-5.…")
In guix/ui.scm:
1331:12 7 (run-guix-command _ . _)
In guix/scripts/import.scm:
114:11 6 (guix-import . _)
In guix/scripts/import/texlive.scm:
91:19 5 (guix-import-texlive . _)
In guix/memoization.scm:
56:0 4 (_ #<hash-table 207b420 0/31> ("keyval" "latex") _)
In unknown file:
3 (_ #<procedure 20a2ba0 at guix/memoization.scm:70:17 ()> #<procedure list _> …)
In guix/import/texlive.scm:
157:25 2 (sxml->package (*TOP* (entry (@ (id "keyval")) (name "keyval") (# "…") …)) _)
In guix/serialization.scm:
270:25 1 (write-file #f #<output: string 24c5310> #:select? _)
In unknown file:
0 (lstat #f)

ERROR: In procedure lstat:
ERROR: Wrong type (expecting string): #f
$ guix import texlive latex-graphics
ni sekvas la redirektigon al 'https://ctan.org/xml/1.2/pkg/latex-graphics'...
Backtrace:
8 (primitive-load "/gnu/store/xjwq4aprrrb43lvsgbydd0m7pxj5758b-guix-0.13.0-5.…")
In guix/ui.scm:
1331:12 7 (run-guix-command _ . _)
In guix/scripts/import.scm:
114:11 6 (guix-import . _)
In guix/scripts/import/texlive.scm:
91:19 5 (guix-import-texlive . _)
In guix/memoization.scm:
56:0 4 (_ #<hash-table 10366c0 0/31> ("latex-graphics" "latex") _)
In unknown file:
3 (_ #<procedure 105e980 at guix/memoization.scm:70:17 ()> #<procedure list _> …)
In guix/import/texlive.scm:
157:25 2 (sxml->package (*TOP* (entry (@ (id "latex-graphics")) (name "latex…") …)) _)
In guix/serialization.scm:
270:25 1 (write-file #f #<output: string 1464310> #:select? _)
In unknown file:
0 (lstat #f)

ERROR: In procedure lstat:
ERROR: Wrong type (expecting string): #f

Ludo’.
R
R
Ricardo Wurmus wrote on 9 Oct 2017 23:12
Re: bug#28303: “guix import texlive keyval” fails
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 28303@debbugs.gnu.org)
87mv50m3f5.fsf@elephly.net
Hi Ludo,

Toggle quote (49 lines)
> --8<---------------cut here---------------start------------->8---
> $ guix import texlive keyval
> ni sekvas la redirektigon al 'https://ctan.org/xml/1.2/pkg/keyval'...
> Backtrace:
> 8 (primitive-load "/gnu/store/xjwq4aprrrb43lvsgbydd0m7pxj5758b-guix-0.13.0-5.…")
> In guix/ui.scm:
> 1331:12 7 (run-guix-command _ . _)
> In guix/scripts/import.scm:
> 114:11 6 (guix-import . _)
> In guix/scripts/import/texlive.scm:
> 91:19 5 (guix-import-texlive . _)
> In guix/memoization.scm:
> 56:0 4 (_ #<hash-table 207b420 0/31> ("keyval" "latex") _)
> In unknown file:
> 3 (_ #<procedure 20a2ba0 at guix/memoization.scm:70:17 ()> #<procedure list _> …)
> In guix/import/texlive.scm:
> 157:25 2 (sxml->package (*TOP* (entry (@ (id "keyval")) (name "keyval") (# "…") …)) _)
> In guix/serialization.scm:
> 270:25 1 (write-file #f #<output: string 24c5310> #:select? _)
> In unknown file:
> 0 (lstat #f)
>
> ERROR: In procedure lstat:
> ERROR: Wrong type (expecting string): #f
> $ guix import texlive latex-graphics
> ni sekvas la redirektigon al 'https://ctan.org/xml/1.2/pkg/latex-graphics'...
> Backtrace:
> 8 (primitive-load "/gnu/store/xjwq4aprrrb43lvsgbydd0m7pxj5758b-guix-0.13.0-5.…")
> In guix/ui.scm:
> 1331:12 7 (run-guix-command _ . _)
> In guix/scripts/import.scm:
> 114:11 6 (guix-import . _)
> In guix/scripts/import/texlive.scm:
> 91:19 5 (guix-import-texlive . _)
> In guix/memoization.scm:
> 56:0 4 (_ #<hash-table 10366c0 0/31> ("latex-graphics" "latex") _)
> In unknown file:
> 3 (_ #<procedure 105e980 at guix/memoization.scm:70:17 ()> #<procedure list _> …)
> In guix/import/texlive.scm:
> 157:25 2 (sxml->package (*TOP* (entry (@ (id "latex-graphics")) (name "latex…") …)) _)
> In guix/serialization.scm:
> 270:25 1 (write-file #f #<output: string 1464310> #:select? _)
> In unknown file:
> 0 (lstat #f)
>
> ERROR: In procedure lstat:
> ERROR: Wrong type (expecting string): #f
> --8<---------------cut here---------------end--------------->8---

In the case of “keyval” I don’t know exactly what is wrong, but in
general it looks like the importer doesn’t use subversion from the store
but expects it to be available in the environment.

If you don’t have subversion in the environment this will fail:

Toggle snippet (35 lines)
guix import texlive multirow
following redirection to `https://ctan.org/xml/1.2/pkg/multirow'...
Backtrace:
17 (primitive-load "/gnu/store/zh0lb2g15hirq7zw2477w7s5ww7dxkv0-guix-0.13.0-6.a9468b4/bin/.guix-real")
In guix/ui.scm:
1375:12 16 (run-guix-command _ . _)
In guix/scripts/import.scm:
114:11 15 (guix-import . _)
In guix/scripts/import/texlive.scm:
91:19 14 (guix-import-texlive . _)
In guix/memoization.scm:
56:0 13 (_ #<hash-table 2dcdbe0 0/31> ("multirow" "latex") _)
In unknown file:
12 (_ #<procedure 2deff80 at guix/memoization.scm:70:17 ()> #<procedure list _> #<undefined>)
In ice-9/boot-9.scm:
142:2 11 (dynamic-wind #<procedure 2e225a0 at ice-9/boot-9.scm:1057:2 _> #<procedure 2e22580 at ice-9/eval.scm:330:1…> …)
In ice-9/eval.scm:
174:20 10 (_ #(#(#(#(#(#(#(#(#(#<directory (guix import texlive) 268e280> #<variable 2f4f7a0 …> …)) …) …) …) …) …) …) …))
177:32 9 (lp (#<procedure 2e38a00 at ice-9/eval.scm:182:7 (env)> #<procedure 2e389e0 at ice-9/eval.scm:282:4 (env)> …))
159:9 8 (_ #(#(#(#(#(#(#(#(#(#<directory (guix import texlive) 268e280> #<variable 2f4f7a0 …> …)) …) …) …) …) …) …) …))
174:20 7 (_ #(#(#(#(#(#(#(#(#(#<directory (guix import texlive) 268e280> #<variable 2f4f7a0 …> …)) …) …) …) …) …) …) …))
177:32 6 (lp (#<procedure 2e42980 at ice-9/eval.scm:182:7 (env)>))
159:9 5 (_ #(#(#(#(#(#(#(#(#(#<directory (guix import texlive) 268e280> #<variable 2f4f7a0 …> …)) …) …) …) …) …) …) …))
159:9 4 (_ #(#(#(#(#(#(#(#(#(#<directory (guix import texlive) 268e280> #<variable 2f4f7a0 …> …)) …) …) …) …) …) …) …))
155:9 3 (_ #(#(#(#(#(#(#(#(#(#<directory (guix import texlive) 268e280> #<variable 2f4f7a0 …> …)) …) …) …) …) …) …) …))
619:8 2 (_ #(#(#<directory (guix import texlive) 268e280> #f) #<output: string 2dd7380> #<procedure 2e42680 at gui…>))
In guix/serialization.scm:
270:25 1 (write-file #f #<output: string 2dd7380> #:select? _)
In unknown file:
0 (lstat #f)

ERROR: In procedure lstat:
ERROR: Wrong type (expecting string): #f

But it’s fine when run inside “guix environment --ad-hoc subversion”.

“keyval” is different, though, as it fails no matter if subversion is
available or not.

For packages like that I had a simple workaround to avoid computing the
hash when the SVN download failed:

Toggle snippet (24 lines)
diff --git a/guix/import/texlive.scm b/guix/import/texlive.scm
index d4c371436..b554f47d2 100644
--- a/guix/import/texlive.scm
+++ b/guix/import/texlive.scm
@@ -152,11 +152,12 @@ expression describing it."
(uri (texlive-ref ,component ,id))
(sha256
(base32
- ,(bytevector->nix-base32-string
- (let-values (((port get-hash) (open-sha256-port)))
- (write-file checkout port)
- (force-output port)
- (get-hash)))))))
+ ,(if checkout (bytevector->nix-base32-string
+ (let-values (((port get-hash) (open-sha256-port)))
+ (write-file checkout port)
+ (force-output port)
+ (get-hash)))
+ "COULD-NOT-DOWNLOAD-SVN-REPO")))))
(build-system texlive-build-system)
(arguments ,`(,'quote (#:tex-directory ,(string-join (list component id) "/"))))
(home-page ,home-page)

The real problem here that should be fixed first, however, is that the
subversion package isn’t used automatically.

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
R
R
Ricardo Wurmus wrote on 9 Oct 2017 23:35
control message for bug #28303
(address . control@debbugs.gnu.org)
E1e1fiJ-0001Dy-Js@debbugs.gnu.org
owner 28303 !
L
L
Ludovic Courtès wrote on 10 Oct 2017 08:51
Re: bug#28303: “guix import texlive keyval” fails
(name . Ricardo Wurmus)(address . rekado@elephly.net)(address . 28303@debbugs.gnu.org)
87vajnpkan.fsf@gnu.org
Ricardo Wurmus <rekado@elephly.net> skribis:

Toggle quote (4 lines)
> In the case of “keyval” I don’t know exactly what is wrong, but in
> general it looks like the importer doesn’t use subversion from the store
> but expects it to be available in the environment.

For now, we could always return an error like “svn command not found” or
similar?

Ludo’.
Z
Z
zimoun wrote on 16 Sep 2021 08:51
(name . Ludovic Courtès)(address . ludo@gnu.org)
86czp9rp26.fsf@gmail.com
Hi,

On Tue, 10 Oct 2017 at 08:51, ludo@gnu.org (Ludovic Courtès) wrote:
Toggle quote (9 lines)
> Ricardo Wurmus <rekado@elephly.net> skribis:
>
>> In the case of “keyval” I don’t know exactly what is wrong, but in
>> general it looks like the importer doesn’t use subversion from the store
>> but expects it to be available in the environment.
>
> For now, we could always return an error like “svn command not found” or
> similar?

I think this old bug [1] is fixed now. The 2 examples works now and
from my understanding, I do not have SVN in my profiles as user.

Closing?

Cheers,
simon


Toggle snippet (33 lines)
$ guix import texlive keyval
following redirection to `https://ctan.org/xml/1.2/pkg/keyval'...
command "svn" "export" "--non-interactive" "--trust-server-cert" "-r" "51265" "svn://www.tug.org/texlive/tags/texlive-2019.3/Master/texmf-dist/source/latex/keyval" "/tmp/guix-directory.lqE1vR/svn" failed with signal 11
guix import: warning: Could not determine source location. Please manually specify the source field.
(package
(name "texlive-latex-keyval")
(version "1.15")
(source #f)
(build-system texlive-build-system)
(arguments '(#:tex-directory "latex/keyval"))
(home-page "http://www.ctan.org/pkg/keyval")
(synopsis "Process 'key=value' schemes")
(description
"The package offered the first key-value decoder for LaTeX 2e; its original user was the graphicxgraphicx package, but it is widely used elsewhere in common LaTeX packages. The package is part of the latex-graphicslatex-graphics bundle, which is one of the collections in the requiredLaTeX â\x80\x98requiredâ\x80\x99 set of packages.")
(license lppl1.3c))

$ guix import texlive multirow
following redirection to `https://ctan.org/xml/1.2/pkg/multirow'...
command "svn" "export" "--non-interactive" "--trust-server-cert" "-r" "51265" "svn://www.tug.org/texlive/tags/texlive-2019.3/Master/texmf-dist/source/latex/multirow" "/tmp/guix-directory.UUm4ha/svn" failed with signal 11
guix import: warning: Could not determine source location. Please manually specify the source field.
(package
(name "texlive-latex-multirow")
(version "2.8")
(source #f)
(build-system texlive-build-system)
(arguments '(#:tex-directory "latex/multirow"))
(home-page "http://www.ctan.org/pkg/multirow")
(synopsis
"Create tabular cells spanning multiple rows")
(description
"The package has a lot of flexibility, including an option for specifying an entry at the â\x80\x9cnaturalâ\x80\x9d width of its text. The package is distributed with the bigdelimbigdelim and bigstrutbigstrut packages, which can be used to advantage with \\multirow cells.")
(license lppl1.3+))
R
R
Ricardo Wurmus wrote on 16 Sep 2021 12:57
(name . zimoun)(address . zimon.toutoune@gmail.com)
875yv0pz2v.fsf@elephly.net
zimoun <zimon.toutoune@gmail.com> writes:

Toggle quote (20 lines)
> Hi,
>
> On Tue, 10 Oct 2017 at 08:51, ludo@gnu.org (Ludovic Courtès)
> wrote:
>> Ricardo Wurmus <rekado@elephly.net> skribis:
>>
>>> In the case of “keyval” I don’t know exactly what is wrong,
>>> but in
>>> general it looks like the importer doesn’t use subversion from
>>> the store
>>> but expects it to be available in the environment.
>>
>> For now, we could always return an error like “svn command not
>> found” or
>> similar?
>
> I think this old bug [1] is fixed now. The 2 examples works now
> and
> from my understanding, I do not have SVN in my profiles as user.

The SVN parts still fail, but at least the rest of the import
works fine.

Toggle quote (2 lines)
> Closing?

Yes, please.

I’d like to note that this importer should eventually be replaced.
I have some WIP for a new importer.

--
Ricardo
Z
Z
zimoun wrote on 21 Sep 2021 08:42
(name . Ricardo Wurmus)(address . rekado@elephly.net)
86mto6ctur.fsf@gmail.com
Hi,

On Thu, 16 Sep 2021 at 12:57, Ricardo Wurmus <rekado@elephly.net> wrote:
Toggle quote (21 lines)
> zimoun <zimon.toutoune@gmail.com> writes:
>> On Tue, 10 Oct 2017 at 08:51, ludo@gnu.org (Ludovic Courtès) wrote:
>>> Ricardo Wurmus <rekado@elephly.net> skribis:
>>>
>>>> In the case of “keyval” I don’t know exactly what is wrong, but in
>>>> general it looks like the importer doesn’t use subversion from the
>>>> store but expects it to be available in the environment.
>>>
>>> For now, we could always return an error like “svn command not
>>> found” or similar?
>>
>> I think this old bug [1] is fixed now. The 2 examples works now and
>> from my understanding, I do not have SVN in my profiles as user.
>
> The SVN parts still fail, but at least the rest of the import works
> fine.
>
>> Closing?
>
> Yes, please.

Done.

Toggle quote (3 lines)
> I’d like to note that this importer should eventually be replaced.
> I have some WIP for a new importer.

Cool!

Cheers,
simon
Closed
?