package-system docs: add FAQ entry on installing without documentation
The entry is mostly about the new `--binary-lib` option, but it also describes the "-lib", "-doc", etc., convention.
This commit is contained in:
parent
b2b00010e3
commit
ccc9edfbc9
|
@ -1049,6 +1049,42 @@ snapshot of all package sources (so that you do not depend on the
|
||||||
original sources).
|
original sources).
|
||||||
|
|
||||||
|
|
||||||
|
@subsection{How can I install a package without its documentation?}
|
||||||
|
|
||||||
|
If package is available in the form of a @tech{built package}, then
|
||||||
|
you can use @exec{raco pkg install --binary-lib} to strip source,
|
||||||
|
tests, and documentation from a package before installing it.
|
||||||
|
|
||||||
|
@tech{Built packages} are typically provided by a snapshot or release
|
||||||
|
site (where a Racket distribution downloaded from the site is
|
||||||
|
configured to consult the site for packages), at least for packages
|
||||||
|
associated with the distribution. Beware that
|
||||||
|
@url{http://pkgs.racket-lang.org/} generally refers to @tech{source
|
||||||
|
packages}, not @tech{built packages}. In the near future, built
|
||||||
|
variants of the @url{http://pkgs.racket-lang.org/} packages will be
|
||||||
|
provided at @url{http://pkg-build.racket-lang.org/catalog/}.
|
||||||
|
|
||||||
|
Some packages have been split at the source level into separate
|
||||||
|
library, test, and documentation packages. For example,
|
||||||
|
@pkgname{net-lib} provides modules such as @racketmodname[net/cookie]
|
||||||
|
without documentation, while @pkgname{net-doc} provides documentation
|
||||||
|
and @pkgname{net-test} provides tests. The @pkgname{net} package
|
||||||
|
depends on @pkgname{net-lib} and @pkgname{net-doc}, and it implies
|
||||||
|
@pkgname{net-lib}, so you can install @pkgname{net} in a minimal
|
||||||
|
Racket distribution to get the libraries with documentation (and lots
|
||||||
|
of additional packages to support documentation), or install
|
||||||
|
@pkgname{net-lib} to get just the libraries.
|
||||||
|
|
||||||
|
If you develop a package that is especially widely used or is
|
||||||
|
especially useful in a constrained installation environment, then
|
||||||
|
splitting your package into @pkgname{-lib}, @pkgname{-doc}, and
|
||||||
|
@pkgname{-test} components may be worthwhile. Most likely, you should
|
||||||
|
keep the packages together in a single source-code repository and use
|
||||||
|
metedata such as @racketidfont{implies} and
|
||||||
|
@racketidfont{update-implies} (see @secref["metadata"]) so that the
|
||||||
|
packages are updated in sync.
|
||||||
|
|
||||||
|
|
||||||
@subsection{Why is the package manager so different than @|Planet1|?}
|
@subsection{Why is the package manager so different than @|Planet1|?}
|
||||||
|
|
||||||
There are two fundamental differences between @|Planet1| and this package manager.
|
There are two fundamental differences between @|Planet1| and this package manager.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user