-
Notifications
You must be signed in to change notification settings - Fork 2
COMPASS-542: Build installers for Ubuntu and Redhat #45
Conversation
We can't use yarn just yet on travis until an upstream fix is landed for yarnpkg/yarn#2164
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Haven't actually played with it yet, but definitely liking the overall direction 👍
language: node_js | ||
node_js: | ||
- 6 | ||
script: npm run-script ci | ||
cache: | ||
# TODO (imlucas) We can't use yarn just yet on travis until an upstream | ||
# fix is landed for https://github.com/yarnpkg/yarn/pull/2164 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yarnpkg/yarn#2164 appears to have been merged ~11 hours ago.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes but 0.19.0
is far from being published.
## Auto Update | ||
|
||
- `hadron-auto-update-manager`: https://github.com/hadron-auto-update-manager | ||
|
||
### macOS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This branch has grown large, would it be reasonable to extract the macOS / Windows / electron-prebuilt changes and get those merged independently?
type: 'boolean', | ||
default: true | ||
}, | ||
signtool_params: { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this only for electron-winstaller, or does it apply to electron-installer-codesign and/or electron-osx-sign?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
electron-winstaller
only. This will be cleaned up as the refactoring to Target
s instead of CONFIG
makes progress.
@@ -53,6 +136,7 @@ const toTable = (CONFIG) => { | |||
}; | |||
|
|||
exports.handler = (argv) => { | |||
console.log('config argv', argv); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does eslint catching these in hadron-build?
default: pkg.author || pkg.authors | ||
} | ||
}; | ||
_.assign(opts, { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
} | ||
/** | ||
* TODO (imlucas) Use pretty debian metadata and options. | ||
* @see https://github.com/unindented/electron-installer-debian#options |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
synopsis
generated from description (as our description is also <80 characters, though generally in the same style as a git commit, i.e. read until the \r\n\r\n
or 79 characters, whichever comes first) would be nice here: https://www.debian.org/doc/debian-policy/ch-binary.html#s-synopsis
Have not looked at any other options though, hopefully lintian helps there.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 will include in follow-up tickets.
More config refactoring e.g. `1.2.0-beta.1` -> rpm: version: 1.2.0, release: beta.1 deb: version: 1.2.0~beta.1
note
npm version major
after merging.Todo
slug
to Config class (_.dasherize('${name}-${channel suffix}')
to pass toelectron-installer-debian
andelectron-installer-redhat
.electron-installer-debian
andelectron-installer-redhat
produce wacky filenames. Figure it out and add tests to make sure they're producing the right files.error: line 2: Illegal char '-' in: Version: 1.2.0-dev
Follow-up tickets to create
Short-term
App icons for Linux
.icns
to a.png
set (e.g. https://iconverticons.com/online/)icon
option for allBrowserWindow
anddialog
callsUser experience check for rpms (Sam)
User experience check for debs (Peter)
Codesign all linux artifacts
The notary-service already has support for
.zip
,.tar.gz
,.deb
and.rpm
. Write a js api client so that therelease
command will produce codesigned artifacts as we do for all other platforms.https://github.com/10gen/notary-service
https://github.com/10gen/notary-service/tree/master/client
Current state of signing:
.app's
. We have a special evergreen distro that has personal key on it.Get it all working on evergreen
Already a ticket for ubuntu test failure, but some additional risk in missing packages, distro availability, etc.
Backlog
Other distribution formats we may want to/have requests for:
Notes