- installed packages and dependencies are now saved into binary files
[scilab.git] / scilab / modules / atoms / macros / atomsList.sci
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) 2009 - DIGITEO - Pierre MARECHAL <pierre.marechal@scilab.org>
3 //
4 // This file must be used under the terms of the CeCILL.
5 // This source file is licensed as described in the file COPYING, which
6 // you should have received as part of this distribution.  The terms
7 // are also available at
8 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
9
10 // End user function
11
12 // display of the available toolboxes
13
14 function atomsList()
15         
16         // Check input parameters
17         // =========================================================================
18         
19         rhs = argn(2);
20         
21         if rhs <> 0 then
22                 error(msprintf(gettext("%s: Wrong number of input arguments: %d expected.\n"),"atomsInstall",0))
23         end
24         
25         // Get the list of available toolboxes
26         // =========================================================================
27         
28         packages_struct    = atomsGetTOOLBOXES();
29         
30         packages_list      = getfield(1,packages_struct);
31         packages_list(1:2) = [];
32         
33         packages_disp      = [];
34         
35         // Loop on package list
36         // =========================================================================
37         
38         for i=1:size(packages_list,"*")
39                 
40                 this_package_name = packages_list(i);
41                 
42                 // Get the list of versions compatibles with this version of Scilab
43                 this_package_versions = atomsCompatibleVersions(packages_list(i));
44                 
45                 if isempty(this_package_versions) then
46                         continue;
47                 end
48                 
49                 // Use the Most Recent Version
50                 this_package_version = this_package_versions(1);
51                 
52                 // Get the details of this toolbox
53                 this_package_details = atomsToolboxDetails(this_package_name,this_package_version);
54                 this_package_summary = this_package_details("Summary");
55                 
56                 packages_disp        = [ packages_disp ; this_package_name this_package_summary ];
57                 
58         end
59         
60         // Loop on package list ... a second time
61         // =========================================================================
62         
63         for i=1:size(packages_disp(:,1),"*")
64                 mprintf("% "+string(max(length(packages_disp(:,1))))+"s - %s\n",packages_disp(i,1),packages_disp(i,2));
65         end
66         
67 endfunction