How to build and use a Meteor package on an arm? - meteor

I tried to host a Meteor server from my Rasperry pi. Until now I was good to go with 4commerce build. I would like to use the CollectionsFS, which is not build for arm processors. I want to build the package myself and need some guidance on how to proceed. It seems like that I only need to build the npm package gridfs-stream
cfs:gridfs have no binaries, but it depends on two npm packages ("gridfs-stream" and "mongodb"), you need rebuild that packages.
due to CollectionFS Issue
Until now I tried to clone the gridfs-stream package and make the makefile, but it seems some important files are missing?
/bin/sh: 1: ./node_modules/mocha/bin/mocha: not found
So how do I compile the package?
Do I have to use the source from Github? Lastly when the package is compiled how will I include it within my Meteor dependencies?

Related

installing github project as a meteor package

I forked a meteor package on github at https://github.com/kfirufk/angular2-meteor-accounts-ui
now I want to install it on a meteor project that I have. there are tons of information on the net, some recommend using meteorite, others recommend using mgp... but all the information that i find is for very old version of meteor and nothing actually works!
any information regarding the issue would be greatly appreciated.
update
I created packages directory inside the root directory and cloned the github package to that directory.
I edited .meteor/packages file and added angular2-meteor-accounts-ui.
now when i run the meteor application i get the following error:
While selecting package versions:
error: unknown package in top-level dependencies:
angular2-meteor-accounts-ui
angular2-meteor-accounts-ui is the name of the package of the github project i cloned (in package.json).
If I understand the question correctly, this is the procedure I've done myself, and it works:
Stop the app
edit the packages file and add the package name of your git fork
clone your git fork inside the packages folder of your meteor project. When you start meteor, packages inside that folder take precedence over the Internet, so once it finds the package there, it will not check the one in atmospherejs for download.
Note: if you want the package to be part of your project code, just remove .git inside the package clone, and add the whole folder to your app repo.

How do I build nginx debian packages from source?

I am trying to build nginx stable repository by adding some modules that are not included in the official distributions but I discovered that the the makefile does not have any step for creating the .deb files.
So while the build works, building the debs seems to be missing from the source code.

what would I use for a meteor package manager

I understand meteor has their own package manager under the covers (that way meteor deploy works to include the packages) but I'm looking for a package manager for meteor. By package manager, i'm looking for like bundler/gemfile (ruby) or maven/pom file (java).
Again I understand the meteor install works fine, but I want to define my own "private" packages as well as have a file to put the package declarations in so when I go to update I can do it easily.
I saw meteorite, but I also read where as of meteor 0.9.0 it is no longer needed.
Thanks!
EDIT:
so for example, in ruby you have the bundler gem which has a gemfile. in the gemfile you put
source 'https://rubygems.org'
gem '<gem_name>','<gem_version>'
gem '<gem_name>','<gem_version>'
and anytime you want to install all the dependencies on a new machine you just run bundle install and it installs the dependencies into the new machine.
I want to do something similar in meteor. example: I have a meteor project that takes the karma and angular-meteor packages (as well as a couple private packages in a bitbucket repo).
so in a gemfile, it would look something like this
source 'http://<atmosphere_url>'
package 'uringo:angular','0.8.8'
package 'sanjo:karma','1.5.1'
source 'https://<my_bit_bucket_repo'>'
package 'name:package1','0.0.1'
package 'name:package2','0.0.1'
and then I just need the command to run the package manager to install the different packages.
It looks like I have to keep packages with the code. So in the top level directory, there's the package folder and all my internal packages for the project will need to live there. Then I just modify the .meteor/project file to include which packages I want in that build. Then when I launch meteor then even though there are many packages in my /packages folder, only the packages in the .meteor/project file will be included.
In addition to the packages in the official Meteor release being used by your app, meteor list and meteor add also search the packages directory at the top of your app. You can also use the packages directory to break your app into subpackages for your convenience, or to test packages that you might want to publish. See Writing Packages. -- http://docs.meteor.com/#/full/usingpackages
so this means just because the package is included in the /packages directory within the project, doesn't mean the project is actually 'using' the package.

Node package dependencies for application

As Meteor 0.6.x introduced support of node packages, it is still not clear how to configure dependency to npm package for whole application. Lets say i need to 'require' some node package in the server code. How to make sure this package will be installed after app is deployed somewhere else?
It's easy enough to setup a package.json file in the root of your project.
You can find a cheatsheet here to help you set one up: http://package.json.nodejitsu.com/
Under dependencies you can specify your runtime deps.
They are installed using the $ npm install command or # npm -g install in case you wnat to install them on your system rather than local to the project.

my RPM package requires 2 already installed shared libraries

I'm looking for help about making rpm packages.
I just created my first RPM package with rpmbuild.
This package is simple. It has just to copy several config files and one executable.
I cannot install this .rpm because 2 shared librairies used by the executable are required.
These librairies are already installed but they are not linked with another .rpm package because I build them from one of my projects. There are located in the /usr/myproject/lib directory.
I tried to put symbolic links to /lib and /usr/lib, tried also to run a "ldconfig" update from a .conf file which contains the /usr/myproject/lib directory, and tried to update the LD_LIBRARY_PATH env variable without any success.
I know I can ignore dependencies using the -nodeps command line option but I'd like in the next step to create my own yum repository but yum do not allow to install a package if the dependencies are not fulfilled.
I would also prefer to keep the automatic dependency feature of rpmbuild enabled.
Thanks in advance.
Package these 2 libraries in another RPM, then you can install both RPMs in one rpm -i call.

Resources