This is the desktop client for Linux, Windows and Mac OSX.
For the official downloads, please visit https://gitter.im/apps.
The Gitter Desktop client is written using NW.js, but the only prerequisite is node.js for your platform and npm 3+.
- clone this repo:
git clone git@github.com:gitterHQ/desktop.git && cd desktop
- install all dependencies:
npm install
- generate your own app oAuth credentials where the redirect url is
app://gitter/oauth.html
- start the app with your credentials:
- linux/osx:
OAUTH_KEY=yourkey OAUTH_SECRET=yoursecret npm start
- windows cmd:
set OAUTH_KEY=yourkey && set OAUTH_SECRET=yoursecret && npm start
- alternatively, put your keys and secrets in
nwapp/oauth.json
--update-url
: The base URL we use to check forpackage.json
manifest updates and downloads. e.g.--update-url=192.168.0.58:3010
--current-install-path
: The path to install/overwrite and files from an update--new-executable
: In combination with--current-install-path
, will start the app in update mode and run the specified executable to update--passthrough-remote-debugging-port
: Used to debug the update process when we spin up new instances. Just like--remote-debugging-port=port
. Unfortunately, nw.js doesn't expose--remote-debugging-port=port
when used so we need to use a slightly different name.
We use nw.js, so you can use any of those CLI parameters like --remote-debugging-port=port
To see the Gitter tray icon run:
sudo apt-add-repository ppa:gurqn/systray-trusty
sudo apt-get update
sudo apt-get upgrade
More info here.
- Install Sawbuck. This tool will capture logs for all chrome-based applications.
- Add "Content Shell" to your list of Providers in Sawbuck by adding these registry entries to your machine (NOTE the optional Wow6432Node key for x64 machines):
- Find:
HKLM\SOFTWARE\[Wow6432Node\]Google\Sawbuck\Providers
- Add a subkey with the name
{6A3E50A4-7E15-4099-8413-EC94D8C2A4B6}
- Add these values:
* Key:
(Default)
, Type:REG_SZ
, Value:Content Shell
* Key:default_flags
, Type:REG_DWORD
, Value:00000001
* Key:default_level
, Type:REG_DWORD
, Value00000004
Alternatively, use this .reg file to do the above for you (in x86) (courtesy of @mydigitalself).
3. Start Sawbuck and go to Log -> Configure Providers
and change Content Shell's Log Level to Verbose
. There are additional privacy-related changes that you may wish to make; see Important Privacy and Security Notice, below.
4. Start capturing logs by going to Log -> Capture
.
5. Start up your Gitter app and watch those logs!
Sawback captures logging data from all running Chrome instances (not just the Gitter Desktop client), so its logs may include URLs you visited, search queries you executed, and the like.
To minimize the risk of including sensitive information in a publicly-posted logging session, you are advised to change the Configure Providers
options such that the Log Level
value is set to None
for every Provider except for Content Shell
. Always review logs for sensitive information and sanitize as appropriate before posting them publicly.
On osx/linux, run the following commands
brew cask install java xquartz
thenbrew install wine
brew install gnu-tar
thensudo gem install fpm
- If on osx(because of a bug with Yosemite), Open
/Library/Ruby/Gems/2.0.0/gems/ffi-1.9.10/lib/ffi/library.rb
and do the fix proposed here: ffi/ffi#461 (comment)
- Build all app artefacts
- On osx, run
gulp cert:fetch:osx
- You will need to setup AWS CLI with your credentials
aws configure
(grab from AWS console IME)
- You will need to setup AWS CLI with your credentials
- On osx, run
gulp build:osx
- On osx/linux, run
gulp build:linux
- On osx/linux, run
gulp cert:fetch:win
- You will need to setup AWS CLI with your credentials
aws configure
(grab from AWS console IME)
- You will need to setup AWS CLI with your credentials
- On windows, run
node ./windows/build.js -p thepfxcertpasswordhere
. For more information, see the windows build readme - On osx/linux, run
gulp autoupdate:zip:win
- On osx/linux, run
gulp autoupdate:zip:osx
- On osx/linux, run
gulp autoupdate:zip:linux
- On osx/linux, create the redirect pages with
gulp redirect:source
- Check that all the binaries work. You should have:
- GitterSetup-X.X.X.exe
- Gitter-X.X.X.dmg
- gitter_X.X.X_amd64.deb
- gitter_X.X.X_i386.deb
- latest_linux32.html
- latest_linux64.html
- latest_win.html
- win32.zip
- osx.zip
- Publish the release (all uploads will throw a formatError!)
- on osx/linux, publish the artefacts by running:
*
gulp artefacts:push:win
*gulp artefacts:push:osx
*gulp artefacts:push:linux32
*gulp artefacts:push:linux64
*gulp autoupdate:push:win
*gulp autoupdate:push:osx
*gulp autoupdate:push:linux
- on osx/linux, publish the redirects by running:
*
gulp redirect:push:win
*gulp redirect:push:linux32
*gulp redirect:push:linux64
- on osx/linux, publish the autoupdate manifest by running
gulp manifest:push
MIT