- adapted to the new stand-alone distribution mode,
- fixed a few references to ".scsh-pkg-defaults.scm", - fixed a few typos.
This commit is contained in:
parent
e5bef8000d
commit
f110632621
|
@ -1,4 +1,4 @@
|
||||||
%% $Id: proposal.tex,v 1.3 2004/03/21 16:21:55 michel-schinz Exp $
|
%% $Id: proposal.tex,v 1.4 2004/03/31 19:42:35 michel-schinz Exp $
|
||||||
|
|
||||||
%% TODO
|
%% TODO
|
||||||
%% - clean up permissions mess
|
%% - clean up permissions mess
|
||||||
|
@ -112,8 +112,6 @@ package are stored below it.
|
||||||
|
|
||||||
The unpacking directory contains at least the following files:
|
The unpacking directory contains at least the following files:
|
||||||
\begin{description}
|
\begin{description}
|
||||||
\item[\file{install-pkg}] a script performing the installation of the
|
|
||||||
package,
|
|
||||||
\item[\file{pkg-def.scm}] a Scheme file containing the installation
|
\item[\file{pkg-def.scm}] a Scheme file containing the installation
|
||||||
procedure for the package (see §~\ref{sec:authoring-packages}),
|
procedure for the package (see §~\ref{sec:authoring-packages}),
|
||||||
\item[\file{README}] a textual file containing a short description of
|
\item[\file{README}] a textual file containing a short description of
|
||||||
|
@ -180,7 +178,7 @@ Currently, the following abstract locations are defined:
|
||||||
|
|
||||||
\item[\location{misc-shared}] Location containing miscellaneous data
|
\item[\location{misc-shared}] Location containing miscellaneous data
|
||||||
which does not belong to any directory above, and which is
|
which does not belong to any directory above, and which is
|
||||||
platform-independant.
|
platform-independent.
|
||||||
\end{description}
|
\end{description}
|
||||||
|
|
||||||
The directories to which a layout maps these abstract locations are
|
The directories to which a layout maps these abstract locations are
|
||||||
|
@ -292,10 +290,10 @@ to track files belonging to a package.
|
||||||
\subsection{Installation procedure}
|
\subsection{Installation procedure}
|
||||||
\label{sec:inst-proc}
|
\label{sec:inst-proc}
|
||||||
|
|
||||||
Packages are installed using the \file{install-pkg} script located in
|
Packages are installed using the \file{scsh-install-pkg} script,
|
||||||
the package archive. This script must be given the name of the prefix
|
which is part of the installation library. This script must be given
|
||||||
using the \cloption{--prefix} option. It also accepts the following
|
the name of the prefix using the \cloption{--prefix} option. It also
|
||||||
options:
|
accepts the following options:
|
||||||
\begin{center}
|
\begin{center}
|
||||||
\begin{tabular}{lp{.6\textwidth}}
|
\begin{tabular}{lp{.6\textwidth}}
|
||||||
\cloption{--layout} name & Specifies the layout to use (see §~\ref{sec:predefined-layouts}). \\
|
\cloption{--layout} name & Specifies the layout to use (see §~\ref{sec:predefined-layouts}). \\
|
||||||
|
@ -304,7 +302,7 @@ options:
|
||||||
\cloption{--inactive} & Do not activate package after installing it. \\
|
\cloption{--inactive} & Do not activate package after installing it. \\
|
||||||
\cloption{--non-shared-only} & Only install platform-dependent files, if any. \\
|
\cloption{--non-shared-only} & Only install platform-dependent files, if any. \\
|
||||||
\cloption{--force} & Overwrite existing files during installation. \\
|
\cloption{--force} & Overwrite existing files during installation. \\
|
||||||
\cloption{--no-user-defaults} & Don't read user defaults in \file{.scsh-pkg-defaults} (see §~\ref{sec:user-preferences}). \\
|
\cloption{--no-user-defaults} & Don't read user defaults in \file{.scsh-pkg-defaults.scm} (see §~\ref{sec:user-preferences}). \\
|
||||||
\end{tabular}
|
\end{tabular}
|
||||||
\end{center}
|
\end{center}
|
||||||
|
|
||||||
|
@ -317,16 +315,16 @@ installation script by storing them in a file called
|
||||||
file must contain exactly one Scheme expression whose value is an
|
file must contain exactly one Scheme expression whose value is an
|
||||||
association list. The keys of this list, which must be symbols,
|
association list. The keys of this list, which must be symbols,
|
||||||
identify options and the values specify the default value for these
|
identify options and the values specify the default value for these
|
||||||
options. The contents of this file is implicitely quasi-quoted.
|
options. The contents of this file is implicitly quasi-quoted.
|
||||||
|
|
||||||
The values stored in this file override the default values of the
|
The values stored in this file override the default values of the
|
||||||
options, but they are in turn overriden by the values specified on the
|
options, but they are in turn overridden by the values specified on the
|
||||||
command line of the installation script. Furthermore, it is possible
|
command line of the installation script. Furthermore, it is possible
|
||||||
to ask for this file to be completely ignored by passing the
|
to ask for this file to be completely ignored by passing the
|
||||||
\cloption{--no-user-defaults} option to the installation script.
|
\cloption{--no-user-defaults} option to the installation script.
|
||||||
|
|
||||||
\begin{example}
|
\begin{example}
|
||||||
A \file{.scsh-pkg-defaults} file containing the following:
|
A \file{.scsh-pkg-defaults.scm} file containing the following:
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
;; Default values for scsh packages installation
|
;; Default values for scsh packages installation
|
||||||
((layout . "fhs")
|
((layout . "fhs")
|
||||||
|
@ -414,21 +412,12 @@ is to write the installation script.
|
||||||
|
|
||||||
This script could be written fully by the package author, but in order
|
This script could be written fully by the package author, but in order
|
||||||
to simplify this task a small scsh installation framework is provided.
|
to simplify this task a small scsh installation framework is provided.
|
||||||
This framework is composed of several files which are meant to be
|
This framework must be present on the host system before a scsh
|
||||||
included in the package archive. These files are:
|
package can be installed.
|
||||||
\begin{description}
|
|
||||||
\item[\file{install-pkg}] A trivial \texttt{sh} script which launches
|
|
||||||
scsh on the main function of the installation library, passing it
|
|
||||||
all the arguments given by the user.
|
|
||||||
\item[\file{install-lib.scm}] The code for the installation library,
|
|
||||||
whose public interface is documented below.
|
|
||||||
\item[\file{install-lib-module.scm}] Scheme 48 interface and structure
|
|
||||||
definitions for the installation library.
|
|
||||||
\end{description}
|
|
||||||
|
|
||||||
As explained above, when the \file{install-pkg} script is invoked, it
|
As explained above, when the \file{scsh-install-pkg} script is
|
||||||
launches scsh on the main function of the installation library, which
|
invoked, it launches scsh on the main function of the installation
|
||||||
does the following:
|
library, which does the following:
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
\item parse the command line arguments (e.g the \cloption{--prefix}
|
\item parse the command line arguments (e.g the \cloption{--prefix}
|
||||||
option),
|
option),
|
||||||
|
|
Loading…
Reference in New Issue