OEP:pkg: Difference between revisions

1,413 bytes added ,  18 November 2012
differences between available and loaded and types of package installation
(differences between available and loaded and types of package installation)
Line 24: Line 24:
   * usage of packages in remote directories which may not be available at all
   * usage of packages in remote directories which may not be available at all
     times
     times
== Available vs Loaded ==
To avoid problems reading thuis document, the distinction between having a package available and
a package loaded will be done from the start. An available package is a package that is currently
available to pkg to load, unload or reinstall. It is already installed but not necessarily loaded.
A loaded package is an installed package whose functions have been added to Octave's function search
path.
== Types of package installs ==
This design supports 3 types of package installations: global (relative to the octave installation), local (user specific) and external (in any other place). Note that Octave itself can be installed in some different ways. It might be a system-wide installation (located somewhere in /usr/local/ for example), a local installation of a normal user (somewhere on /home/user/anywhere), or installed in the home directory of a system user (can be anywhere).
=== Global installs ===
The meaning of global is relative to the Octave installation. If an Octave installation is local, a global
installation of a package will still place its files in the home directory of the user (something like
~/usr/local/ or whatever was defined when running Octave's installation configure script). Anyone running
this Octave installation will have them available (not loaded) from Octave startup.
A package globally installed is available globally to that
=== Local installs ===
=== External installs ===


== Package names ==
== Package names ==
Line 55: Line 76:
characters. Unlike variable names, package names will not be case sensitive since
characters. Unlike variable names, package names will not be case sensitive since
it would create problems when installing packages in filesystems that are not case
it would create problems when installing packages in filesystems that are not case
sensitive (creating directories named Image and image would not be possible in FAT or HFS systems).
sensitive (creating directories named Image and image would not be possible in FAT
systems).
 


== Types of package installs ==
== User cases ==
== User cases ==
=== Case 1 ===
=== Case 1 ===