[racket-dev] package system, minimal builds and more
Hi,
i played a bit with the new package system, minimal installs and cross
compiling. It works pretty good but i have a few problems and
remarks/questions.
I start with a fresh yesterdays minimal source
(min-racket-5.90.0.9-src.tgz), build it (natively for linux) and try to
install packages.
(Given in no particular order)
* compiler-lib install fails with the following error
./bin/raco pkg install -i compiler-lib
Resolving "compiler-lib" via
http://www.eecs.northwestern.edu/plt/snapshots/20130929-6d4ff30/catalog/
Resolving "compiler-lib" via https://pkg.racket-lang.org
Downloading checksum for compiler-lib
Downloading
http://racket-packages.s3-us-west-2.amazonaws.com/pkgs/b824ed762533834659b5f0ee047deafb101acc74/compiler-lib.zip
raco pkg install: package conflicts with existing installed
package: compiler-lib
module path: compiler/option
As its needed by racket-doc and similar it blocks install of a lot of
packets
* the snapshot catalog seems to be nonexistent
If i browse to
http://www.eecs.northwestern.edu/plt/snapshots/20130929-6d4ff30/catalog/,
i always get a 404. Is this intended?
* redownload after fail
the package manager seems to download every packet again after a failed
install or user interruption. Would it be worth to reuse the once
downloaded zips if the checksum is the same (similar to the behavior of
apt).
* raco pkg warnings
On every command i get
warning: tool "pkg" registered twice: "pkg" and
#<path:/home/hamm_to/tmp/racket/_tmp/racket-5.90.0.9/collects/pkg>
warning: tool "setup" registered twice: "setup" and
#<path:/home//hamm_to/tmp/racket/_tmp/racket-5.90.0.9/collects/setup>
warning: tool "link" registered twice: "link" and
#<path:/home/hamm_to/tmp/racket/_tmp/racket-5.90.0.9/collects/setup>
/home/hamm_to/tmp/racket/_tmp/racket-5.90.0.9/ is the used installation.
* sometimes installations fail without a reason or hangs
./bin/raco pkg install -i xrepl
[...]
The following uninstalled packages are listed as dependencies of
macro-debugger-text-lib
and they will be installed:
parser-tools-lib
unstable-list-lib
Resolving "parser-tools-lib" via
http://www.eecs.northwestern.edu/plt/snapshots/20130929-6d4ff30/catalog/
Resolving "parser-tools-lib" via https://pkg.racket-lang.org
Resolving "parser-tools-lib" via https://planet-compat.racket-lang.org
raco pkg install: cannot find package on catalogs
package: parser-tools-lib
rerunning the command and it suddenly works.
* monolithic math
currently math is one big package and installing it pulls in nearly
everything through the docs. Is it planned to split it into -lib and -doc?
* cross compiling and installing
is it possible to install packages as part of the bootstrap process? the
problem i have is that the build machine is a regular linux but the cross
compile target is constrained in that it cannot install packages (no
internet, no writable discs, ...). But i can't install via raco because
racket is compiled for that target it does not run on linux.
I can currently work around this by installing a linux racket with same
version, installing there and then copying share/, but thats somewhat ugly.
* More verbose require error
If i require something nonexistent i get an exception like
(require fdfsdfsdf)
; readline-input:4:8: collection not found
; for module path: fdfsdfsdf
; collection: "fdfsdfsdf"
; in collection directories:
; /home/hamm_to/.racket/snapshot/collects
;
/volume/USERSTORE/hamm_to/tmp/racket-qnx/linux-racket-5.90.0.9/collects
; /home/hamm_to/.racket/snapshot/collects
;
/volume/USERSTORE/hamm_to/tmp/racket-qnx/linux-racket-5.90.0.9/collects
; ... [22 additional linked and package directories]
Is it possible to somehow show these additional 22 entries? Maybe not in
the error but from raco?
I know these are a lot of things and some might be obvious or result from
misunderstanding or missing something. So thanks for enlightening answers
to any of these.
Tobias