1 // ripped from Evergreen installation file
3 /* We'll want to make this more flexible later */
7 // ----------------------------------------------------------------------------
8 // Performs the install
9 // ----------------------------------------------------------------------------
12 // ----------------------------------------------------------------------------
13 var _authors = "PINES";
14 var _package = "math";
15 var _packg_l = "math";
16 var _version = "0.0.1";
17 // ----------------------------------------------------------------------------
19 var err; // track the error
21 err = initInstall( _package, "/"+_authors+"/"+_package, _version );
22 if( err != 0 ) { return warn( "initInstall: " + err );}
24 // ----------------------------------------------------------------------------
25 // Discovers the path to the install directory
26 // ----------------------------------------------------------------------------
27 install_dir = getFolder("Chrome", _packg_l );
28 logComment( "Installing to: " + install_dir );
30 // ----------------------------------------------------------------------------
31 // Directory where the 'content' is stored
32 // ----------------------------------------------------------------------------
33 content_dir = getFolder( install_dir, "content" );
34 if( err != 0 ) { return warn("getFolder:content_dir: " + err);}
36 // ----------------------------------------------------------------------------
37 // Directory where the skins are stored
38 // ----------------------------------------------------------------------------
39 skin_dir = getFolder( install_dir, "skin" );
40 if( err != 0 ) { return warn("getFolder:skin: " + err);}
42 // ----------------------------------------------------------------------------
43 // Directory where the local data is stored
44 // ----------------------------------------------------------------------------
45 locale_dir = getFolder( install_dir, "locale" );
46 if( err != 0 ) { return warn("getFolder:locale: " + err);}
48 // ----------------------------------------------------------------------------
49 // Sets the install directory for Evergreen
50 // ----------------------------------------------------------------------------
51 err = setPackageFolder(install_dir);
52 if( err != 0 ) { return warn("setPackageFolder: " + err);}
54 // ----------------------------------------------------------------------------
55 // Searches the .xpi file for the directory name stored in _packg_l and
56 // copies that directory from the .xpi into Mozilla's chrome directory.
57 // In this case, we are copying over the entire evergreen folder
58 // ----------------------------------------------------------------------------
59 err = addDirectory( _packg_l )
60 if( err != 0 ) { return warn("addDirectory: " + err);}
63 // ----------------------------------------------------------------------------
64 // Register the content directory
65 // The final argument is where Mozilla should expect to find the contents.rdf
66 // file *after* installation for the CONTENT portion of the package
67 // ----------------------------------------------------------------------------
68 err = registerChrome( Install.CONTENT, content_dir );
69 if( err != 0 ) { return warn("registerChrome:content " + err );}
71 // ----------------------------------------------------------------------------
72 // Register the skin directory
73 // ----------------------------------------------------------------------------
74 err = registerChrome( Install.SKIN, skin_dir );
75 if( err != 0 ) { return warn("registerChrome:skin " + err );}
77 // ----------------------------------------------------------------------------
78 // Register the locale directory
79 // ----------------------------------------------------------------------------
80 //err = registerChrome( Install.LOCALE, locale_dir );
81 //if( err != 0 ) { return warn("registerChrome:locale " + err );}
83 err = registerChrome( Install.LOCALE, getFolder(locale_dir, "en-US") );
84 if( err != 0 ) { return warn("registerChrome:locale " + err );}
86 // ----------------------------------------------------------------------------
88 // ----------------------------------------------------------------------------
93 function warn( message ) {
95 logComment( message );