Skip to content

Commit

Permalink
Merge pull request #2 from vladimiry/ft-settings-ui-enhancement
Browse files Browse the repository at this point in the history
beta release preparation
  • Loading branch information
vladimiry authored Jan 1, 2018
2 parents 59dd3f2 + 9788d20 commit e53a06b
Show file tree
Hide file tree
Showing 45 changed files with 726 additions and 293 deletions.
22 changes: 15 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# protonmail-desktop-app

is an unofficial [ProtonMail](https://protonmail.com/) desktop client. It's basically the ProtonMail's [web interface](https://mail.protonmail.com) that's being opened inside the [Electron](https://github.com/electron/electron) container with custom features built on top of it. You can see below the screenshots of the `default` and `compact` view modes.
is an unofficial [ProtonMail](https://protonmail.com/) desktop client. It's basically the ProtonMail's [web interface](https://mail.protonmail.com) that's being opened inside [Electron](https://github.com/electron/electron) container with custom features built on top of it. You can see below the screenshots of the `default` and `compact` view modes.

![view-default](https://user-images.githubusercontent.com/1560781/34328616-a10c2a2a-e8f4-11e7-9cfe-2308ee3391b2.png)

Expand All @@ -18,9 +18,17 @@ is an unofficial [ProtonMail](https://protonmail.com/) desktop client. It's basi
- Close to tray.
- Compact view mode.

## TODO
- The following features are already toggleable/configurable via the `config.json` file (you can reach the `config.json` file clicking "Open Settings Folder" item in the app menu), but so far there is no UI to configure them:
- Notifications.
- Start minimized to tray.
- Close to tray.
- Key derivation and encryption presets selection.
## Build your own binary

- Regardless of the platform you are working on, you will need to have Node.JS v8 installed. Version 8 is required to match the Node.JS version Electron comes with. If you already have Node.JS installed, but not the version 8, then you might want you to use [Node Version Manager](https://github.com/creationix/nvm) to be able to work with multiple versions:
- Install [NVM](https://github.com/creationix/nvm).
- Run `nvm instal 8`.
- Run `nvm use 8`.
- [keytar](https://github.com/atom/node-keytar) module requires compiling prebuild node files and for that Python and C++ compiler need to be installed on your system:
- **`On Windows`**: the simplest way to install all the needed stuff on Windows is to run `npm install --global --production windows-build-tools` CLI command.
- **`On Linux`**: `python v2.7`, `make` and a C/C++ compiler toolchain, like `GCC` are most likely already installed.
- **`On Mac OS X`**: `python v2.7` and [Xcode](https://developer.apple.com/xcode/download/) need to be installed. You also need to install the `Command Line Tools` via Xcode, can be found under the `Xcode -> Preferences -> Downloads` menu.
- [Clone](https://help.github.com/articles/cloning-a-repository/) this project to your local device. If you are going to contribute, consider cloning the [forked](https://help.github.com/articles/fork-a-repo/) into your own GitHub account project.
- Install dependencies running `npm install`.
- Build app running `npm run app:dist`. It's better to not touch a mouse during the process, since it might interfere with the `e2e` tests running at the end of the process.
- Build the final Electron binary running `electron-builder:dist`. Outcome will be placed under the `./dist` folder.
6 changes: 2 additions & 4 deletions electron-builder.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,19 +45,17 @@ linux:
- {target: freebsd}
- {target: pacman}
- {target: rpm}
- {target: tar.gz}

win:
artifactName: ${name}-${version}-windows-${arch}.${ext}
icon: ./app/assets/icons/win/icon.ico
target:
- {target: nsis}
- {target: nsis-web}
- {target: portable}
- {target: zip}
- {target: squirrel}

nsis:
artifactName: ${name}-${version}-windows-${arch}-installer.${ext}
artifactName: ${name}-${version}-windows-${arch}-nsis-installer.${ext}
oneClick: false
perMachine: false

Expand Down
Loading

0 comments on commit e53a06b

Please sign in to comment.