Node.js Feed

From WebOS Internals
Revision as of 20:53, 19 October 2010 by Halfhalo (talk | contribs) (Created page with 'Just brainstorming a way to make a node.js feed from the npm repo that is integrated into preware nicely, including dependencies. Load in all webOS versions with node For each …')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Just brainstorming a way to make a node.js feed from the npm repo that is integrated into preware nicely, including dependencies.

Load in all webOS versions with node

For each package, go through the versions of the package until we hit a package that is supported by the devices node version For each dependency, do the same. If the dependencies are not met, do not package and try the next version of the main package. If package has make in an install script, reject it. for each node version it runs on, add that to the accepted webos version it corresponds to ipk would consist of the tar of that version of the module, and install script would copy it to a central folder location Uninstall script would remove the folder containing the module If there are more versions, compile them as well. http://registry.npmjs.org/

The feed builder would keep a copy of the accepted packages in memory to create the Packages file when all the modules have been built. If a module has already been built, then the building is skipped. If a module has NOT been built, then it gets built using a custom node script.


First release would not support any packages that have install scripts due to the lack of make on the target platform.

Also, there NODE_PATH needs to be set to something like /media/internal/.node_library, and all the modules must be installed there in order to have node properly load the modules in when they are requested.

Since nothing is being built for most packages (those that do require building should be rejected by the first step), only webos version (and the corresponding node version) should be checked for compatability.