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
I start with a fresh yesterdays minimal source
(min-racket-220.127.116.11-src.tgz), build it (natively for linux) and try to
(Given in no particular order)
* compiler-lib install fails with the following error
./bin/raco pkg install -i compiler-lib
Resolving "compiler-lib" via
Resolving "compiler-lib" via https://pkg.racket-lang.org
Downloading checksum for compiler-lib
raco pkg install: package conflicts with existing installed
module path: compiler/option
As its needed by racket-doc and similar it blocks install of a lot of
* the snapshot catalog seems to be nonexistent
If i browse to
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
* raco pkg warnings
On every command i get
warning: tool "pkg" registered twice: "pkg" and
warning: tool "setup" registered twice: "setup" and
warning: tool "link" registered twice: "link" and
/home/hamm_to/tmp/racket/_tmp/racket-18.104.22.168/ 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
and they will be installed:
Resolving "parser-tools-lib" via
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
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
; readline-input:4:8: collection not found
; for module path: fdfsdfsdf
; collection: "fdfsdfsdf"
; in collection directories:
; ... [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.
Racket Developers list: