meteor
meteor copied to clipboard
Meteor 1.5
Hi, will there be an update for Meteor 1.5?
Hi, If you don't want to wait for an update, you can build your own Meteor 1.5. Here's an exemple of what I did to build Meteor 1.5.2.2 for ARMv6. It have to start mongod manually and set MONGO_URL to tell meteor to use it, but in the end it's working :)
diff --git a/meteor b/meteor
index 1e608a0..6187e6c 100755
--- a/meteor
+++ b/meteor
@@ -21,7 +21,7 @@ if [ "$UNAME" = "Darwin" ] ; then
ARCH="x86_64"
elif [ "$UNAME" = "Linux" ] ; then
ARCH="$(uname -m)"
- if [ "$ARCH" != "i686" -a "$ARCH" != "x86_64" ] ; then
+ if [ "$ARCH" != "i686" -a "$ARCH" != "x86_64" -a "$ARCH" != "armv6l" ] ; then
echo "Unsupported architecture: $ARCH"
echo "Meteor only supports i686 and x86_64 for now."
exit 1
diff --git a/scripts/build-dev-bundle-common.sh b/scripts/build-dev-bundle-common.sh
index 2fb80fe..43740ab 100644
--- a/scripts/build-dev-bundle-common.sh
+++ b/scripts/build-dev-bundle-common.sh
@@ -13,7 +13,7 @@ NPM_VERSION=4.6.1
NODE_BUILD_NUMBER=111
if [ "$UNAME" == "Linux" ] ; then
- if [ "$ARCH" != "i686" -a "$ARCH" != "x86_64" ] ; then
+ if [ "$ARCH" != "i686" -a "$ARCH" != "x86_64" -a "$ARCH" != "armv6l" ] ; then
echo "Unsupported architecture: $ARCH"
echo "Meteor only supports i686 and x86_64 for now."
exit 1
@@ -62,6 +62,9 @@ then
elif [ "$ARCH" == "x86_64" ]
then
NODE_TGZ="node-v${NODE_VERSION}-linux-x64.tar.gz"
+ elif [ "$ARCH" == "armv6l" ]
+ then
+ NODE_TGZ="node-v${NODE_VERSION}-linux-armv6l.tar.gz"
else
echo "Unknown architecture: $UNAME $ARCH"
exit 1
diff --git a/scripts/generate-dev-bundle.sh b/scripts/generate-dev-bundle.sh
index 85a95af..4a94720 100755
--- a/scripts/generate-dev-bundle.sh
+++ b/scripts/generate-dev-bundle.sh
@@ -42,20 +42,31 @@ downloadOfficialNode() {
}
# Try each strategy in the following order:
-extractNodeFromTarGz || downloadNodeFromS3 || downloadOfficialNode
-
-# Download Mongo from mongodb.com
-MONGO_NAME="mongodb-${OS}-${ARCH}-${MONGO_VERSION}"
-MONGO_TGZ="${MONGO_NAME}.tgz"
-MONGO_URL="http://fastdl.mongodb.org/${OS}/${MONGO_TGZ}"
-echo "Downloading Mongo from ${MONGO_URL}"
-curl "${MONGO_URL}" | tar zx
-
-# Put Mongo binaries in the right spot (mongodb/bin)
-mkdir -p mongodb/bin
-mv "${MONGO_NAME}/bin/mongod" mongodb/bin
-mv "${MONGO_NAME}/bin/mongo" mongodb/bin
-rm -rf "${MONGO_NAME}"
+extractNodeFromTarGz || downloadOfficialNode || downloadNodeFromS3
+
+if [ "$ARCH" == "armv6l" ] ; then
+ # Download Mongo from 4commerce-technologies-ag / meteor-universal
+ MONGO_VERSION=2.6.7
+ MONGO_NAME="mongo_Linux_${ARCH}_v${MONGO_VERSION}"
+ MONGO_TGZ="${MONGO_NAME}.tar.gz"
+ MONGO_URL="https://bintray.com/4commerce-technologies-ag/meteor-universal/download_file?file_path=arm_dev_bundles%2F${MONGO_TGZ}"
+ echo "Downloading Mongo from ${MONGO_URL}"
+ curl -L "${MONGO_URL}" | tar zx
+else
+ # Download Mongo from mongodb.com
+ MONGO_NAME="mongodb-${OS}-${ARCH}-${MONGO_VERSION}"
+ MONGO_TGZ="${MONGO_NAME}.tgz"
+ MONGO_URL="http://fastdl.mongodb.org/${OS}/${MONGO_TGZ}"
+ echo "Downloading Mongo from ${MONGO_URL}"
+ curl "${MONGO_URL}" | tar zx
+ # Put Mongo binaries in the right spot (mongodb/bin)
+ mkdir -p mongodb/bin
+ mv "${MONGO_NAME}/bin/mongod" mongodb/bin
+ mv "${MONGO_NAME}/bin/mongo" mongodb/bin
+ rm -rf "${MONGO_NAME}"
+fi
+
+
# export path so we use the downloaded node and npm
export PATH="$DIR/bin:$PATH"
diff --git a/tools/isobuild/bundler.js b/tools/isobuild/bundler.js
index 2dea5b3..def873c 100644
--- a/tools/isobuild/bundler.js
+++ b/tools/isobuild/bundler.js
@@ -2516,6 +2516,7 @@ class ServerTarget extends JsImageTarget {
var archToPlatform = {
'os.linux.x86_32': 'Linux_i686',
'os.linux.x86_64': 'Linux_x86_64',
+ 'os.linux.armv6l': 'Linux_armv6l',
'os.osx.x86_64': 'Darwin_x86_64',
'os.windows.x86_32': 'Windows_x86_32'
};
diff --git a/tools/utils/archinfo.js b/tools/utils/archinfo.js
index d14a26f..31c9fe0 100644
--- a/tools/utils/archinfo.js
+++ b/tools/utils/archinfo.js
@@ -155,6 +155,8 @@ var host = function () {
_host = "os.linux.x86_32";
} else if (_.contains(["x86_64", "amd64", "ia64"], machine)) {
_host = "os.linux.x86_64";
+ } else if (_.contains(["armv6l"], machine)) {
+ _host = "os.linux.armv6l";
} else {
throw new Error("Unsupported architecture: " + machine);
}
Nice! I will try and tell the results! This should be in a tutorial.
Hi, I have not been able install Meteor 1.5.2.2 on Raspberry (armv61). Is it possible ? If yes, someboby can publish the instructions, please ?
Does this work for Meteor 1.6, too?
You can try with my latest update: https://github.com/Gatux/meteor
Thanks
FYI -- this works great using ubuntu cosmic mongod/mongo (update script to copy from /usr/bin/mongod) and Meteor 1.7.x/devel. Compiled on a rockpro64.