This file is indexed.

/usr/share/doc/octave/octave.html/Creating-Packages.html is in octave-doc 4.2.2-1ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Creating Packages (GNU Octave)</title>

<meta name="description" content="Creating Packages (GNU Octave)">
<meta name="keywords" content="Creating Packages (GNU Octave)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<link href="index.html#Top" rel="start" title="Top">
<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Packages.html#Packages" rel="up" title="Packages">
<link href="The-DESCRIPTION-File.html#The-DESCRIPTION-File" rel="next" title="The DESCRIPTION File">
<link href="Administrating-Packages.html#Administrating-Packages" rel="prev" title="Administrating Packages">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="octave.css">


</head>

<body lang="en">
<a name="Creating-Packages"></a>
<div class="header">
<p>
Previous: <a href="Administrating-Packages.html#Administrating-Packages" accesskey="p" rel="prev">Administrating Packages</a>, Up: <a href="Packages.html#Packages" accesskey="u" rel="up">Packages</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Creating-Packages-1"></a>
<h3 class="section">37.4 Creating Packages</h3>

<p>Internally a package is simply a gzipped tar file that contains a
top level directory of any given name.  This directory will in the
following be referred to as <code>package</code> and may contain the
following files:
</p>
<dl compact="compact">
<dt><code>package/CITATION</code></dt>
<dd><p>This is am optional file describing instructions on how to cite
the package for publication.  It will be displayed verbatim by the
function <code>citation</code>.
</p>
</dd>
<dt><code>package/COPYING</code></dt>
<dd><p>This is a required file containing the license of the package.  No
restrictions is made on the license in general.  If however the
package contains dynamically linked functions the license must be
compatible with the GNU General Public License.
</p>
</dd>
<dt><code>package/DESCRIPTION</code></dt>
<dd><p>This is a required file containing information about the package.
See <a href="The-DESCRIPTION-File.html#The-DESCRIPTION-File">The DESCRIPTION File</a>, for details on this file.
</p>
</dd>
<dt><code>package/ChangeLog</code></dt>
<dd><p>This is an optional file describing all the changes made to the
package source files.
</p>
</dd>
<dt><code>package/INDEX</code></dt>
<dd><p>This is an optional file describing the functions provided by the
package.  If this file is not given then one with be created
automatically from the functions in the package and the
<code>Categories</code> keyword in the <samp>DESCRIPTION</samp> file.
See <a href="The-INDEX-File.html#The-INDEX-File">The INDEX File</a>, for details on this file.
</p>
</dd>
<dt><code>package/NEWS</code></dt>
<dd><p>This is an optional file describing all user-visible changes worth
mentioning.  As this file increases on size, old entries can be moved
into <samp>package/ONEWS</samp>.
</p>
</dd>
<dt><code>package/ONEWS</code></dt>
<dd><p>This is an optional file describing old entries from the <samp>NEWS</samp> file.
</p>
<a name="index-PKG_005fADD"></a>
<a name="XREFPKG_005fADD"></a></dd>
<dt><code>package/PKG_ADD</code></dt>
<dd><p>An optional file that includes commands that are run when the package
is added to the users path.  Note that <code><span class="nolinebreak">PKG_ADD</span></code><!-- /@w --> directives in the
source code of the package will also be added to this file by the
Octave package manager.  Note that symbolic links are to be avoided in
packages, as symbolic links do not exist on some file systems, and so
a typical use for this file is the replacement of the symbolic link
</p>
<div class="example">
<pre class="example">ln -s foo.oct bar.oct
</pre></div>

<p>with an autoload directive like
</p>
<div class="example">
<pre class="example">autoload ('bar', which ('foo'));
</pre></div>

<p>See <a href="PKG_005fADD-and-PKG_005fDEL-Directives.html#PKG_005fADD-and-PKG_005fDEL-Directives">PKG_ADD and PKG_DEL Directives</a>, for details on <code><span class="nolinebreak">PKG_ADD</span></code><!-- /@w -->
directives.
</p>
<a name="index-PKG_005fDEL"></a>
<a name="XREFPKG_005fDEL"></a></dd>
<dt><code>package/PKG_DEL</code></dt>
<dd><p>An optional file that includes commands that are run when the package
is removed from the users path.  Note that <code><span class="nolinebreak">PKG_DEL</span></code><!-- /@w --> directives in
the source code of the package will also be added to this file by the
Octave package manager.
See <a href="PKG_005fADD-and-PKG_005fDEL-Directives.html#PKG_005fADD-and-PKG_005fDEL-Directives">PKG_ADD and PKG_DEL Directives</a>, for details on <code><span class="nolinebreak">PKG_DEL</span></code><!-- /@w -->
directives.
</p>
</dd>
<dt><code>package/pre_install.m</code></dt>
<dd><p>This is an optional function that is run prior to the installation of a
package.  This function is called with a single argument, a struct with
fields names after the data in the <samp>DESCRIPTION</samp>, and the paths where
the package functions will be installed.
</p>
</dd>
<dt><code>package/post_install.m</code></dt>
<dd><p>This is an optional function that is run after the installation of a
package.  This function is called with a single argument, a struct with
fields names after the data in the <samp>DESCRIPTION</samp>, and the paths where
the package functions were installed.
</p>
</dd>
<dt><code>package/on_uninstall.m</code></dt>
<dd><p>This is an optional function that is run prior to the removal of a
package.  This function is called with a single argument, a struct with
fields names after the data in the <samp>DESCRIPTION</samp>, the paths where
the package functions are installed, and whether the package is currently
loaded.
</p></dd>
</dl>

<p>Besides the above mentioned files, a package can also contain one or
more of the following directories:
</p>
<dl compact="compact">
<dt><code>package/inst</code></dt>
<dd><p>An optional directory containing any files that are directly installed
by the package.  Typically this will include any <code>m</code>-files.
</p>
</dd>
<dt><code>package/src</code></dt>
<dd><p>An optional directory containing code that must be built prior to the
packages installation.  The Octave package manager will execute
<samp>./configure</samp> in this directory if this script exists, and will
then call <code>make</code> if a file <samp>Makefile</samp> exists in this
directory.  <code>make install</code> will however not be called.  The
environment variables <code>MKOCTFILE</code>, <code><span class="nolinebreak">OCTAVE_CONFIG</span></code><!-- /@w -->, and
<code>OCTAVE</code> will be set to the full paths of the programs
<code>mkoctfile</code>, <code>octave-config</code>, and <code>octave</code>, respectively,
of the correct version when <code>configure</code> and <code>make</code> are
called.  If a file called <code>FILES</code> exists all files listed there
will be copied to the <code>inst</code> directory, so they also will be
installed.  If the <code>FILES</code> file doesn&rsquo;t exist, <samp>src/*.m</samp> and
<samp>src/*.oct</samp> will be copied to the <code>inst</code> directory.
</p>
</dd>
<dt><code>package/doc</code></dt>
<dd><p>An optional directory containing documentation for the package.  The
files in this directory will be directly installed in a sub-directory
of the installed package for future reference.
</p>
</dd>
<dt><code>package/bin</code></dt>
<dd><p>An optional directory containing files that will be added to the
Octave <code><span class="nolinebreak">EXEC_PATH</span></code><!-- /@w --> when the package is loaded.  This might contain
external scripts, etc., called by functions within the package.
</p></dd>
</dl>

<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">&bull; <a href="The-DESCRIPTION-File.html#The-DESCRIPTION-File" accesskey="1">The DESCRIPTION File</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="The-INDEX-File.html#The-INDEX-File" accesskey="2">The INDEX File</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="PKG_005fADD-and-PKG_005fDEL-Directives.html#PKG_005fADD-and-PKG_005fDEL-Directives" accesskey="3">PKG_ADD and PKG_DEL Directives</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Missing-Components.html#Missing-Components" accesskey="4">Missing Components</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
</td></tr>
</table>

<hr>
<div class="header">
<p>
Previous: <a href="Administrating-Packages.html#Administrating-Packages" accesskey="p" rel="prev">Administrating Packages</a>, Up: <a href="Packages.html#Packages" accesskey="u" rel="up">Packages</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>