Skip to content

Commit b7d2b40

Browse files
author
Mostafa Eweda
committed
Merge pull request #2612 from ajaxorg/fusm
Get rid of SourceMint + (kind of) Windows support
2 parents 7f3d318 + 96b6af0 commit b7d2b40

File tree

7 files changed

+38
-142
lines changed

7 files changed

+38
-142
lines changed

README.md

Lines changed: 26 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -34,31 +34,23 @@ We support the newer versions of Chrome, Firefox and Safari.
3434

3535
## Installation and Usage
3636

37+
If installing on Windows, please refer to [Installation on Windows](##installation-on-windows-experimental).
38+
3739
Requirements:
3840

3941
* NodeJS `>= 0.6.16`
4042
* NPM `>= 1.1.16`
41-
* libxml-dev
43+
* libxml2-dev
4244

4345
Install:
44-
```sh
45-
# Be sure you have sourcemint installed:
46-
npm install -g sm
47-
48-
# Then:
49-
sm clone --dev https://github.com/ajaxorg/cloud9/tree/master cloud9
50-
51-
# or
52-
git clone https://github.com/ajaxorg/cloud9.git cloud9
53-
cd cloud9
54-
sm install
55-
```
5646

47+
git clone https://github.com/ajaxorg/cloud9.git
48+
cd cloud9
49+
npm install
5750

58-
The above install steps create a `cloud9` directory in your current directory. Just `cd` into it
59-
and run `bin/cloud9.sh` to start:
51+
The above install steps create a `cloud9` directory with a `bin/cloud9.sh`
52+
script that can be used to start Cloud9:
6053

61-
cd cloud9
6254
bin/cloud9.sh
6355

6456
Optionally, you may specify the directory you'd like to edit:
@@ -84,59 +76,34 @@ Cloud9 is compatible with all connect authentication layers,
8476
to implement your own, please see the `plugins-server/cloud9.connect.basic-auth` plugin
8577
on how we added basic authentication.
8678

87-
## Updating
88-
89-
To update to the latest version (if this doesn't work, just make a fresh clone):
90-
91-
git pull
92-
sm update
93-
94-
`sm update` does not currently install missing npm dependencies. To do so use:
79+
## Installation on Windows (experimental)
9580

96-
sm install
81+
If you're running Cloud9 on Windows you'll have to follow these steps as well:
9782

98-
## Development
83+
* Install [Grep for Windows](http://gnuwin32.sourceforge.net/downlinks/grep.php)
84+
* Add `C:\Program Files (x86)\GnuWin32\bin` to your [PATH](http://www.computerhope.com/issues/ch000549.htm)
85+
* Open a new instance of `cmd` with elevated rights (right click 'Run as adminstrator')
86+
* Now follow the steps under 'Install'
87+
* *Please note that the `npm install` fails due to a libxml error, but you can ignore that for now.*
9988

100-
To work on a subcomponent that is copied into node_modules, you can use `sm edit`.
101-
For instance, to work on ACE, run the following from the checkout root:
89+
To start Cloud9, please don't start through `bin/cloud9.sh` but rather via:
10290

103-
sm edit ace
91+
node server.js [args]
10492

105-
This is somewhat equivalent to `npm link` but instead of linking to a system wide
106-
shared package it clones the source into the node_modules/<name> directory.
107-
The idea is to only "edit" when you need to make changes and when done issue
108-
"sm save <name>" (not yet implemented) which will pull up sourcetree to commit,
109-
push code and switch package back to read mode (frozen). The status page
93+
Please note that there will be errors displayed regarding the `find` command,
94+
and that some features might not work.
95+
Feel free to improve the Windows experience and open a pull request.
11096

111-
sm status
112-
113-
shows problematic and improvement oriented action steps to improve the state of
114-
the program. These relate to git status and dependency changes that need to be
115-
made to bring the dependencies up to date and ready to publish which leads to deployment.
116-
117-
The line on the status page will have a (W) if it is setup for editing.
118-
119-
To launch Sourcetree for all dirty/ahead repositories in the dependency
120-
tree use (need to have Sourcetree command-line tools installed (`stree`)):
121-
122-
sm fix
123-
124-
The sourcemint package manager works alongside NPM so to link in a
125-
(system-wide shared) NPM package use:
126-
127-
rm -R node_modules/architect
128-
npm link architect
129-
130-
`sm` always works on your program sub-tree other than pulling things in
131-
from the cache.
97+
## Updating
13298

133-
To view help info for cloud9 use:
99+
To update to the latest version (if this doesn't work, just make a fresh clone):
134100

135-
sm help
101+
git pull
102+
npm update
136103

137-
To view usage info for `sm` use:
104+
`npm update` does not currently install missing dependencies. To do so use:
138105

139-
sm -h
106+
npm install
140107

141108
## Open Source Projects Used
142109

configs/default.js

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@ var argv = require('optimist').argv;
55
var path = require("path");
66

77
var clientExtensions = {};
8-
var clientDirs = fs.readdirSync(__dirname + "/../plugins-client");
8+
var clientDirs = fs.readdirSync(path.join(__dirname, "/../plugins-client"));
99
for (var i = 0; i < clientDirs.length; i++) {
1010
var dir = clientDirs[i];
1111
if (dir.indexOf("ext.") !== 0)
1212
continue;
1313

1414
var name = dir.split(".")[1];
15-
clientExtensions[name] = __dirname + "/../plugins-client/" + dir;
15+
clientExtensions[name] = path.join(__dirname, "../plugins-client/", dir);
1616
}
1717

1818
var projectDir = (argv.w && path.resolve(process.cwd(), argv.w)) || process.cwd();
@@ -30,10 +30,6 @@ var config = [
3030
packagePath: "connect-architect/connect",
3131
port: port,
3232
host: host
33-
}, {
34-
packagePath: "./cloud9.sourcemint",
35-
prefix: "/static/bundles",
36-
plugins: clientExtensions
3733
}, {
3834
packagePath: "connect-architect/connect.static",
3935
prefix: "/static"

package.json

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,9 @@
1010
"cli": "./scripts/help.js"
1111
},
1212

13-
"pm": "sm",
1413
"dependencies": {
1514
"connect": "1.8.7",
1615

17-
"sourcemint-loader-js": "0.x",
18-
"sourcemint-platform-nodejs": "0.x",
1916
"http-error": "0.0.1",
2017
"simple-template": "0.0.1",
2118

@@ -32,7 +29,14 @@
3229
"smith": "0.1.9",
3330
"smith.io": "0.0.36",
3431
"vfs-architect": "0.0.2",
35-
"jsDAV": "0.2.4"
32+
"jsDAV": "https://github.com/ajaxorg/jsDAV/tarball/209289355d69adde11dbcd0c83e6dd24a6d9184a",
33+
34+
"ace": "https://github.com/ajaxorg/ace/tarball/cc2a2c9e056c6d4049f8849ec3ad72974de37177",
35+
"apf": "https://github.com/ajaxorg/apf/tarball/145f65bd24ae83f041418dd01a9c51d278045f3f",
36+
"asyncjs": "https://github.com/ajaxorg/async.js/tarball/0b4ed5608a32c280a7690b5f52883d8d1fc0de08",
37+
"v8debug": "https://github.com/ajaxorg/lib-v8debug/tarball/d2fac9b09724cb2e75e2807191eace9bc27d3b52",
38+
"packager": "https://github.com/ajaxorg/packager/tarball/bee2a82c6d5e2875024bfdc83937e98092ccf04f",
39+
"treehugger": "https://github.com/ajaxorg/treehugger/tarball/b22d7ad712f76a7e7b1070ab339d567dfbf059b1"
3640
},
3741

3842
"devDependencies": {
@@ -43,16 +47,6 @@
4347
"vfs-nodefs-adapter": "~0.3.0"
4448
},
4549

46-
"mappings": {
47-
"ace": ["npm", "https://github.com/ajaxorg/ace/tarball/cc2a2c9e056c6d4049f8849ec3ad72974de37177"],
48-
"apf": ["npm", "https://github.com/ajaxorg/apf/tarball/145f65bd24ae83f041418dd01a9c51d278045f3f"],
49-
"asyncjs": ["npm", "https://github.com/ajaxorg/async.js/tarball/0b4ed5608a32c280a7690b5f52883d8d1fc0de08"],
50-
"v8debug": ["npm", "https://github.com/ajaxorg/lib-v8debug/tarball/d2fac9b09724cb2e75e2807191eace9bc27d3b52"],
51-
"packager": ["npm", "https://github.com/ajaxorg/packager/tarball/bee2a82c6d5e2875024bfdc83937e98092ccf04f"],
52-
"treehugger": ["npm", "https://github.com/ajaxorg/treehugger/tarball/b22d7ad712f76a7e7b1070ab339d567dfbf059b1"],
53-
"runjs": ["npm", "https://github.com/c9/runjs/tarball/347ad9627fb4a1d63458bc66ea40f0bf1efbf05c"]
54-
},
55-
5650
"repository" : {
5751
"type" : "git",
5852
"url" : "git://github.com/ajaxorg/cloud9.git"

plugins-server/cloud9.client-plugins/package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,7 @@
1111
"provides": ["client-plugins"],
1212
"consumes": [
1313
"static",
14-
"log",
15-
"sourcemint"
14+
"log"
1615
]
1716
}
1817
}

plugins-server/cloud9.core/ide.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ var Ide = module.exports = function(options) {
4545
plugins: options.plugins,
4646
bundledPlugins: options.bundledPlugins || [],
4747
requirejsConfig: options.requirejsConfig,
48-
projectName: options.projectName || this.workspaceDir.split("/").pop(),
48+
projectName: options.projectName || Path.basename(this.workspaceDir),
4949
version: options.version,
5050
extra: options.extra,
5151
hosted: !!options.hosted,

plugins-server/cloud9.sourcemint/package.json

Lines changed: 0 additions & 18 deletions
This file was deleted.

plugins-server/cloud9.sourcemint/sourcemint.js

Lines changed: 0 additions & 42 deletions
This file was deleted.

0 commit comments

Comments
 (0)