Skip to content

Commit

Permalink
Added meteor-ros package directly into the app
Browse files Browse the repository at this point in the history
- this is necessary to make sure all native dependencies (such as
  cairo) can be installed locally. As a meteor package on atmosphere
  we would have to publish binary builts which I don't yet know how to
  do given those third-party dependencies. The way it is now you just
  need to make sure all those dependencies are already installed on
  your machine (RobotWebTools/roslibjs#104):

  On Ubuntu:

  $ sudo apt-get install libcairo2-dev libjpeg8-dev libpango1.0-dev libgif-dev build-essential g++

  on osx this might work (assuming you have xcode with command line tools installed):

  brew install cairo libjpeg libgif
  • Loading branch information
chfritz committed Feb 7, 2016
1 parent 1ace3e7 commit 322e9ed
Show file tree
Hide file tree
Showing 9 changed files with 178 additions and 1 deletion.
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,11 @@ rosrun turtle_draw turtle_draw_node shape1.json

## Meteor app

### Dependencies on OSX:
### Dependencies:

https://github.com/RobotWebTools/roslibjs/pull/104

#### on OSX:
The app installs it's own npm dependencies, but on OSX El Capitan, I saw an
error related to `jpeglib.h` when installing npm dependencies for roslibjs (used
by chfritz:meteor-ros). I got past this by running:
Expand Down
1 change: 1 addition & 0 deletions app/packages/meteor-ros/.npm/package/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
node_modules
7 changes: 7 additions & 0 deletions app/packages/meteor-ros/.npm/package/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
This directory and the files immediately inside it are automatically generated
when you change this package's NPM dependencies. Commit the files in this
directory (npm-shrinkwrap.json, .gitignore, and this README) to source control
so that others run the same versions of sub-dependencies.

You should NOT check in the node_modules directory that Meteor automatically
creates; if you are using git, the .gitignore file tells git to ignore it.
73 changes: 73 additions & 0 deletions app/packages/meteor-ros/.npm/package/npm-shrinkwrap.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

46 changes: 46 additions & 0 deletions app/packages/meteor-ros/.versions
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
babel-compiler@5.8.24_1
babel-runtime@0.1.4
base64@1.0.4
binary-heap@1.0.4
blaze@2.1.3
blaze-tools@1.0.4
boilerplate-generator@1.0.4
callback-hook@1.0.4
check@1.1.0
chfritz:ros@0.0.1
ddp@1.2.2
ddp-client@1.2.1
ddp-common@1.2.2
ddp-server@1.2.2
deps@1.0.9
diff-sequence@1.0.1
ecmascript@0.1.6
ecmascript-runtime@0.2.6
ejson@1.0.7
geojson-utils@1.0.4
html-tools@1.0.5
htmljs@1.0.5
id-map@1.0.4
jquery@1.11.4
local-test:chfritz:ros@0.0.1
logging@1.0.8
meteor@1.1.10
minimongo@1.0.10
mongo@1.1.3
mongo-id@1.0.1
npm-mongo@1.4.39_1
observe-sequence@1.0.7
ordered-dict@1.0.4
promise@0.5.1
random@1.0.5
reactive-var@1.0.6
retry@1.0.4
routepolicy@1.0.6
spacebars@1.0.7
spacebars-compiler@1.0.7
tinytest@1.0.6
tracker@1.0.9
ui@1.0.8
underscore@1.0.4
webapp@1.2.3
webapp-hashing@1.0.5
9 changes: 9 additions & 0 deletions app/packages/meteor-ros/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Meteor package for ROS (http://www.ros.org/).

For now just a thin wrapper around roslibj (http://robotwebtools.org/jsdoc/roslibjs/current/).

Dependencies:

Install and run rosbridge:

https://github.com/RobotWebTools/rosbridge_suite
5 changes: 5 additions & 0 deletions app/packages/meteor-ros/meteor-ros-tests.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
// Write your tests here!
// Here is an example.
Tinytest.add('example', function (test) {
test.equal(true, true);
});
3 changes: 3 additions & 0 deletions app/packages/meteor-ros/meteor-ros.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@

// for now we just export the roslib
ROSLIB = Npm.require('roslib');
30 changes: 30 additions & 0 deletions app/packages/meteor-ros/package.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
Package.describe({
name: 'chfritz:ros',
version: '0.0.1',
summary: 'Meteor package for ROS. For now just a thin wrapper around roslibj.',
// URL to the Git repository containing the source code for this package.
git: '',
// By default, Meteor will default to using README.md for documentation.
// To avoid submitting documentation, set this field to null.
documentation: 'README.md'
});

Npm.depends({
"roslib": "0.17.0"
});

Package.onUse(function(api) {
api.versionsFrom('1.2.1');
api.use('ecmascript');
api.addFiles('meteor-ros.js');
if (api.export) {
api.export('ROSLIB', 'server');
}
});

Package.onTest(function(api) {
api.use('ecmascript');
api.use('tinytest');
api.use('chfritz:ros');
api.addFiles('meteor-ros-tests.js');
});

0 comments on commit 322e9ed

Please sign in to comment.