From 281669965f42d00f3c407ef736f8b32d9cd7de1c Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 26 Apr 2016 21:53:59 +0900 Subject: [PATCH 1/5] Use electron-builder to create deb packages --- gulpfile.js | 2 +- package.json | 12 ++++++++++-- resources/{appicon.icns => icon.icns} | Bin resources/{appicon.ico => icon.ico} | Bin resources/{appicon.png => icon.png} | Bin src/package.json | 2 +- 6 files changed, 12 insertions(+), 4 deletions(-) rename resources/{appicon.icns => icon.icns} (100%) rename resources/{appicon.ico => icon.ico} (100%) rename resources/{appicon.png => icon.png} (100%) diff --git a/gulpfile.js b/gulpfile.js index 61ed0d27..3ff51433 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -190,7 +190,7 @@ function makePackage(platform, arch, callback) { prune: true, overwrite: true, "app-version": packageJson.version, - icon: 'resources/appicon', + icon: 'resources/icon', "version-string": { CompanyName: packageJson.author, LegalCopyright: 'Copyright (c) 2015 ' + packageJson.author, diff --git a/package.json b/package.json index 41548447..322ae96f 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "version": "1.1.1", "description": "Mattermost Desktop application for Windows, Mac and Linux", "main": "main.js", - "author": "Yuya Ochiai", + "author": "Yuya Ochiai ", "license": "MIT", "engines": { "node": ">=4.2.0" @@ -20,7 +20,7 @@ "package": "gulp package", "package:windows": "gulp package:windows", "package:osx": "gulp package:osx", - "package:linux": "gulp package:linux", + "package:linux": "gulp build && build --platform linux --arch all -d deb", "package:all": "gulp package:all", "prettify": "gulp prettify" }, @@ -30,6 +30,7 @@ "babel-preset-react": "^6.5.0", "chromedriver": "^2.20.0", "del": "^2.2.0", + "electron-builder": "^3.11.0", "electron-connect": "^0.3.7", "electron-packager": "^5.1.0", "electron-prebuilt": "0.37.3", @@ -50,5 +51,12 @@ "webdriverio": "^3.3.0", "webpack": "^1.12.15", "webpack-stream": "^3.1.0" + }, + "build":{ + }, + "directories":{ + "buildResources": "resources", + "app": "dist", + "output": "release" } } diff --git a/resources/appicon.icns b/resources/icon.icns similarity index 100% rename from resources/appicon.icns rename to resources/icon.icns diff --git a/resources/appicon.ico b/resources/icon.ico similarity index 100% rename from resources/appicon.ico rename to resources/icon.ico diff --git a/resources/appicon.png b/resources/icon.png similarity index 100% rename from resources/appicon.png rename to resources/icon.png diff --git a/src/package.json b/src/package.json index 59f3bf1e..31ba4823 100644 --- a/src/package.json +++ b/src/package.json @@ -4,7 +4,7 @@ "version": "1.1.1", "description": "Mattermost Desktop application for Windows, Mac and Linux", "main": "main.js", - "author": "Yuya Ochiai", + "author": "Yuya Ochiai ", "license": "MIT", "devDependencies": { "electron-connect": "^0.3.3" From 162b0ae6324f480f5de1959c50d681337b79939a Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 26 Apr 2016 22:48:16 +0900 Subject: [PATCH 2/5] Add the short description for deb packages --- package.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 322ae96f..751dc1d5 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,10 @@ "webpack": "^1.12.15", "webpack-stream": "^3.1.0" }, - "build":{ + "build": { + "linux": { + "synopsis": "Mattermost Desktop" + } }, "directories":{ "buildResources": "resources", From 40eecf0dadb7983a37dfe3163d58495588acf02c Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 26 Apr 2016 23:00:07 +0900 Subject: [PATCH 3/5] Create deb packages on CircleCI --- circle.yml | 1 + circle/make_draft.sh | 2 ++ docker/Dockerfile | 3 +++ docker/package_in_docker.sh | 1 + 4 files changed, 7 insertions(+) diff --git a/circle.yml b/circle.yml index a74708fa..73760fc6 100644 --- a/circle.yml +++ b/circle.yml @@ -30,6 +30,7 @@ dependencies: - tar zcvf $CIRCLE_ARTIFACTS/mattermost-desktop-osx.tar.gz -C release mattermost-desktop-osx - tar zcvf $CIRCLE_ARTIFACTS/mattermost-desktop-linux-ia32.tar.gz -C release mattermost-desktop-linux-ia32 - tar zcvf $CIRCLE_ARTIFACTS/mattermost-desktop-linux-x64.tar.gz -C release mattermost-desktop-linux-x64 + - mv release/*.deb $CIRCLE_ARTIFACTS/ test: override: diff --git a/circle/make_draft.sh b/circle/make_draft.sh index f65c9e59..dd0d7373 100755 --- a/circle/make_draft.sh +++ b/circle/make_draft.sh @@ -52,3 +52,5 @@ deploy win64 zip deploy osx tar.gz deploy linux-ia32 tar.gz deploy linux-x64 tar.gz +upload mattermost-desktop-$RELEASE_TAG-i386 release/mattermost-desktop-$RELEASE_TAG-i386.deb +upload mattermost-desktop-$RELEASE_TAG-amd64 release/mattermost-desktop-$RELEASE_TAG-amd64.deb diff --git a/docker/Dockerfile b/docker/Dockerfile index 8a4606f7..fc60e813 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -7,6 +7,9 @@ ENV PATH=$HOME/.nodebrew/current/bin:$PATH USER root RUN apt-get update && apt-get -y install wget bzip2 zip +# electron-builder +apt-get -y install ruby ruby-dev gcc make icnsutils graphicsmagick xz-utils && gem install fpm + USER xclient # install Node.js RUN curl -L git.io/nodebrew | perl - setup && nodebrew install-binary $NODE_VERSION && nodebrew use $NODE_VERSION diff --git a/docker/package_in_docker.sh b/docker/package_in_docker.sh index 1349b767..3d4216df 100755 --- a/docker/package_in_docker.sh +++ b/docker/package_in_docker.sh @@ -3,3 +3,4 @@ set -ex cd electron-mattermost npm run package:all +npm run package:linux From b65fbf6e5f6f263377bbbc6781ff550cfd0064b1 Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 26 Apr 2016 23:12:06 +0900 Subject: [PATCH 4/5] Add missing RUN in Dockerfile --- docker/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index fc60e813..03870432 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -8,7 +8,7 @@ USER root RUN apt-get update && apt-get -y install wget bzip2 zip # electron-builder -apt-get -y install ruby ruby-dev gcc make icnsutils graphicsmagick xz-utils && gem install fpm +RUN apt-get -y install ruby ruby-dev gcc make icnsutils graphicsmagick xz-utils && gem install fpm USER xclient # install Node.js From fde15631fbf1666b39a7d1b437dd3bdd12f754de Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 26 Apr 2016 23:19:43 +0900 Subject: [PATCH 5/5] Add "apt-get update" in Dockerfile --- docker/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 03870432..18b06cf4 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -8,7 +8,7 @@ USER root RUN apt-get update && apt-get -y install wget bzip2 zip # electron-builder -RUN apt-get -y install ruby ruby-dev gcc make icnsutils graphicsmagick xz-utils && gem install fpm +RUN apt-get update && apt-get -y install ruby ruby-dev gcc make icnsutils graphicsmagick xz-utils && gem install fpm USER xclient # install Node.js