qlot
qlot copied to clipboard
Problem with github archive, use git instead
I just installed qlot from github today and ran into a problem trying to qlot install
using a github
designator:
qlfile:
github sycamore ndantam/sycamore :branch master
$ ros install fukamachi/qlot
$ qlot install
Output:
Installing Quicklisp to /home/anticrisis/dev/common-lisp/test-qlot/quicklisp/ ...
; Fetching #<URL "http://beta.quicklisp.org/quicklisp.lisp">
; 55.80KB
Reading '/home/anticrisis/dev/common-lisp/test-qlot/qlfile'...
; Fetching #<URL "http://beta.quicklisp.org/dist/quicklisp.txt">
; 0.40KB
==================================================
408 bytes in 0.00 seconds (0.00KB/sec)
Already have dist "quicklisp" version "2017-08-30".
Installing dist "sycamore".
Unhandled ARCHIVE:UNHANDLED-READ-HEADER-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING
{100197F7E3}>:
Unhandled ARCHIVE:UNHANDLED-READ-HEADER-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING {100197F7E3}>:
#<ARCHIVE:UNHANDLED-READ-HEADER-ERROR {10059EA3E3}>
[condition]
Slots with :INSTANCE allocation:
FORMAT-CONTROL = NIL
FORMAT-ARGUMENTS = NIL
Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {100197F7E3}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<ARCHIVE:UNHANDLED-READ-HEADER-ERROR {10059EA3E3}> #<unused argument>)
1: (SB-DEBUG::RUN-HOOK SB-EXT:*INVOKE-DEBUGGER-HOOK* #<ARCHIVE:UNHANDLED-READ-HEADER-ERROR {10059EA3E3}>)
2: (INVOKE-DEBUGGER #<ARCHIVE:UNHANDLED-READ-HEADER-ERROR {10059EA3E3}>)
3: (ERROR ARCHIVE:UNHANDLED-READ-HEADER-ERROR :TYPEFLAG 50)
4: ((:METHOD ARCHIVE:READ-ENTRY-FROM-ARCHIVE (ARCHIVE:TAR-ARCHIVE)) #<ARCHIVE:TAR-ARCHIVE {10053566F3}>) [fast-method]
5: ((SB-PCL::EMF ARCHIVE:READ-ENTRY-FROM-ARCHIVE) #<unused argument> #<unused argument> #<ARCHIVE:TAR-ARCHIVE {10053566F3}>)
6: ((:METHOD ARCHIVE:READ-ENTRY-FROM-ARCHIVE :AROUND (T)) #<ARCHIVE:TAR-ARCHIVE {10053566F3}>) [fast-method]
7: (ARCHIVE::EXTRACT-FILES-FROM-ARCHIVE #<ARCHIVE:TAR-ARCHIVE {10053566F3}> #<CLOSURE (LAMBDA (&REST SB-IMPL::ARGUMENTS) :IN CONSTANTLY) {100598820B}>)
8: (QLOT/ARCHIVE:EXTRACT-TARBALL #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/tmp/qlot/5GEXGEG5/source-github/archive/sycamore.tar.gz" #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/tmp/qlot/5GEXGEG5/source-http/repos/")
9: ((:METHOD QLOT/SOURCE:PREPARE (QLOT.SOURCE.HTTP:SOURCE-HTTP)) #<QLOT.SOURCE.GITHUB:SOURCE-GITHUB sycamore https://github.com/ndantam/sycamore/archive/master.tar.gz>) [fast-method]
10: ((SB-PCL::EMF QLOT/SOURCE:PREPARE) #<unused argument> #<unused argument> #<QLOT.SOURCE.GITHUB:SOURCE-GITHUB sycamore https://github.com/ndantam/sycamore/archive/master.tar.gz>)
11: ((LAMBDA NIL :IN QLOT/SERVER::MAKE-APP))
12: ((LAMBDA (QLOT/SERVER::ENV) :IN QLOT/SERVER::MAKE-APP) (:PATH-INFO "qlot://localhost/sycamore.txt"))
13: (QLOT/SERVER::QLOT-FETCH "qlot://localhost/sycamore.txt" #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/tmp/install-dist-distinfo.txt" :FOLLOW-REDIRECTS #<unused argument> :QUIETLY #<unused argument> :MAXIMUM-REDIRECTS #<unused argument>)
14: (QL-DIST:INSTALL-DIST #<QL-HTTP:URL "qlot://localhost/sycamore.txt"> :PROMPT NIL :REPLACE NIL)
15: (QLOT/INSTALL::INSTALL-SOURCE #<QLOT.SOURCE.GITHUB:SOURCE-GITHUB sycamore https://github.com/ndantam/sycamore/archive/master.tar.gz>)
16: (QLOT/INSTALL::APPLY-QLFILE-TO-QLHOME #P"/home/anticrisis/dev/common-lisp/test-qlot/qlfile" #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/" :IGNORE-LOCK NIL)
17: (QLOT/INSTALL:INSTALL-QLFILE #P"/home/anticrisis/dev/common-lisp/test-qlot/qlfile" :QUICKLISP-HOME #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/")
18: (MAIN "install")
19: (SB-INT:SIMPLE-EVAL-IN-LEXENV (APPLY (QUOTE MAIN) ROSWELL:*ARGV*) #<NULL-LEXENV>)
20: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ROSWELL:QUIT (APPLY (QUOTE MAIN) ROSWELL:*ARGV*)) #<NULL-LEXENV>)
21: (SB-EXT:EVAL-TLF (ROSWELL:QUIT (APPLY (QUOTE MAIN) ROSWELL:*ARGV*)) NIL NIL)
22: ((LABELS SB-FASL::EVAL-FORM :IN SB-INT:LOAD-AS-SOURCE) (ROSWELL:QUIT (APPLY (QUOTE MAIN) ROSWELL:*ARGV*)) NIL)
23: (SB-INT:LOAD-AS-SOURCE #<CONCATENATED-STREAM :STREAMS NIL {1003395AC3}> :VERBOSE NIL :PRINT NIL :CONTEXT "loading")
24: ((FLET SB-FASL::LOAD-STREAM :IN LOAD) #<CONCATENATED-STREAM :STREAMS NIL {1003395AC3}> NIL)
25: (LOAD #<CONCATENATED-STREAM :STREAMS NIL {1003395AC3}> :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST T :EXTERNAL-FORMAT :DEFAULT)
26: ((FLET ROSWELL::BODY :IN ROSWELL:SCRIPT) #<SB-SYS:FD-STREAM for "file /home/anticrisis/.roswell/bin/qlot" {1003390F53}>)
27: (ROSWELL:SCRIPT "/home/anticrisis/.roswell/bin/qlot" "install")
28: (ROSWELL:RUN ((:SCRIPT "/home/anticrisis/.roswell/bin/qlot" "install") (:QUIT NIL)))
29: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ROSWELL:RUN (QUOTE ((:SCRIPT "/home/anticrisis/.roswell/bin/qlot" "install") (:QUIT NIL)))) #<NULL-LEXENV>)
30: (EVAL (ROSWELL:RUN (QUOTE ((:SCRIPT "/home/anticrisis/.roswell/bin/qlot" "install") (:QUIT NIL)))))
31: (SB-IMPL::PROCESS-EVAL/LOAD-OPTIONS ((:EVAL . "(progn #-ros.init(cl:load \"/usr/etc/roswell/init.lisp\"))") (:EVAL . "(ros:run '((:script \"/home/anticrisis/.roswell/bin/qlot\"\"install\")(:quit ())))")))
32: (SB-IMPL::TOPLEVEL-INIT)
33: ((FLET "WITHOUT-INTERRUPTS-BODY-35" :IN SB-EXT:SAVE-LISP-AND-DIE))
34: ((LABELS SB-IMPL::RESTART-LISP :IN SB-EXT:SAVE-LISP-AND-DIE))
unhandled condition in --disable-debugger mode, quitting
Workaround:
Change qlfile to this:
git sycamore https://github.com/ndantam/sycamore :branch master
You might consider getting rid of github
archive support anyway, seems like that might be error prone, as long as git
support implies that the git
command must be available.
It seems github
syntax has a problem with a library which doesn't have .asd
file at the root of the project root.
You might consider getting rid of github archive support anyway
I defer the decision for now. Just fixing the problem.
My first guess was wrong. The project has a symlink README.md
to README
that causes an error in archive.