Commit graph

171 commits

Author SHA1 Message Date
Michael Telatynski
42ab878b08
Update Node Headers URL
https://www.electronjs.org/docs/latest/breaking-changes#deprecated-atomio-node-headers-url
2022-05-22 09:33:14 +01:00
Michael Telatynski
2a2e6781c1
Update weblateToCounterpart to be more resilient (#360) 2022-05-17 16:50:22 +00:00
Michael Telatynski
5f1f6b0b7a
Allow changing the docker image name for in-docker.sh runs (#348) 2022-05-03 10:12:57 +00:00
Michael Telatynski
b21c720510
Move more stuff from BK to GHA (#342) 2022-04-21 15:16:18 +01:00
J. Ryan Stinnett
87c5232ba5
Disable Git interactive auth when fetching deps (#298) 2022-01-12 11:02:51 +00:00
Travis Ralston
79b0f14984
Fix git protocol usage for CI (#296)
Prevents this:
```
+ git clone git://github.com/matrix-org/matrix-js-sdk.git matrix-js-sdk --branch develop --depth 1
Cloning into 'matrix-js-sdk'...
fatal: remote error:
  The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
```
2022-01-11 09:06:07 +00:00
J. Ryan Stinnett
989e030d97
Update linting plugin (#294) 2022-01-10 12:57:33 +00:00
David Baker
37d7559d86
Change module mode for hak (#291)
Turns out the previous setting didn't work, and apparently this
needs to be CommonJS.
2021-12-15 15:40:26 +00:00
David Baker
326e6577e1
Convert hak to TypeScript (#289)
* Convert hak to TypeScript

* Fix linter & remove stray log line

* Fix more linting errors

In one case by switching to import() and hence esnext

* Return type for getNodeModuleBin

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

* More types

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2021-12-14 14:32:27 +00:00
David Baker
3c8650065c
Use app-builder-lib to get electron version (#288)
So we can get it the same way electron-builder does and not need
electronVersion in package.json
2021-12-13 21:15:17 +00:00
David Baker
1a38ca6fa7
Merge pull request #234 from vector-im/dbkr/pacote
Use pacote to fetch native modules
2021-07-21 15:26:40 +01:00
David Baker
71134c448d Fix docker variable passthrough 2021-07-19 20:09:13 +01:00
David Baker
bfcb1e6bfb Pass through env vars with special prefix 2021-07-19 18:38:30 +01:00
David Baker
ba0dd9e2a6 Use pacote to fetch native modules
Fact: 8 out of 10 native node module packages published to npm are broken.
Actual fact: npm has a library called pacote that handles resolving the
package specifier you put in your dependencies to files on disk, and it's
actually really nice.

Change hak to use that library so now it's much simpler, handles
versions correctly and supports git / github etc. urls so we can
specify dependencies from git when a package author only publishes
half of the package to npm.
2021-07-16 23:38:04 +01:00
David Baker
d82377e2de Fix not specifying a target
ie. it should use whatever's detected
2021-07-07 21:38:09 +01:00
Germain
79a426b1c0
Merge pull request #227 from vector-im/gsouquet/ci-pure-lockfile
Do not generate a lockfile when running in CI
2021-07-07 17:53:38 +01:00
Germain Souquet
e132e1c610 Do not generate a lockfile when running in CI 2021-07-07 16:10:01 +02:00
David Baker
3dd611b5d5
Address macos properly
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2021-07-07 11:01:45 +01:00
David Baker
e07bfc1d6a Support universal builds
Hopefully adequately documented in the README
2021-07-06 23:52:19 +01:00
Michael Telatynski
9b65962d26
Update scripts/copy-res.js
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2021-07-01 15:48:07 +01:00
Michael Telatynski
8302e284a3 delint 2021-07-01 12:03:38 +01:00
Michael Telatynski
390e2306d0 Fix i18n in Element Desktop 2021-07-01 11:32:09 +01:00
J. Ryan Stinnett
b8cb53e11b Fix Windows target arch in native build 2021-06-25 13:10:08 +01:00
J. Ryan Stinnett
3aff9cb9eb Add generated file warning 2021-06-24 15:20:24 +01:00
J. Ryan Stinnett
6579ba80b4 More copyright headers 2021-06-24 15:11:57 +01:00
J. Ryan Stinnett
c5dd6195f2 Fix copy command log 2021-06-23 16:18:10 +01:00
J. Ryan Stinnett
f3c1db3313 Cross-compile SQLCipher for aarch64-apple-darwin 2021-06-23 16:18:09 +01:00
J. Ryan Stinnett
c57a173649 Check for Rust host and target support 2021-06-23 16:18:09 +01:00
J. Ryan Stinnett
48dc1ab396 Print rejections that reach the root handler 2021-06-23 16:18:09 +01:00
J. Ryan Stinnett
997f2c21bf Use targets in hak environment for cross-compiling
This arranges the hak environment target info around target IDs that come from
the builder, which simplifies cross-compiling. The `target.js` module is a
generated copy of the builder's `target.ts`.
2021-06-23 16:18:09 +01:00
J. Ryan Stinnett
a171fa417b Borrow target definition from electron-builder
A bit hacky, but for now we paste in the JS generated version of the builder's
`target.ts` module. It's quite unlikely to change often, so this is perhaps
enough for now.
2021-06-23 16:18:09 +01:00
J. Ryan Stinnett
115f25165a Rename hak target to runtime version
The hak environment's `target` is more like a runtime version, so this renames
to call it that, especially since we're about to add more traditional target
strings. `npm_config_target` remains, since that's what `npm` expects.
2021-06-23 16:18:09 +01:00
J. Ryan Stinnett
1455687384 Auto-fix lint errors 2021-05-27 14:45:06 +01:00
Tor Solli-Nowlan
46ee80837a
Update scripts/fetch-package.js
Co-authored-by: Germain <germain@souquet.com>
2021-04-14 12:34:53 +02:00
Tor Solli-Nowlan
97178f4297 setDebVersion function no longer exists
Signed-off-by: Tor Solli-Nowlan <tor.solli-nowlan@medisin.uio.no>
2021-04-13 12:22:32 +02:00
J. Ryan Stinnett
e952b479ac Update branding of packaging artifacts
This updates the names of various packaging and build artifacts to match current
branding.

Part of https://github.com/vector-im/element-web/issues/14896
2020-11-24 12:48:37 +00:00
J. Ryan Stinnett
b7a2810dc3 Update to Element pipeline name 2020-09-09 11:09:10 +01:00
J. Ryan Stinnett
045f122688 Replace Riot with Element in docs and comments
This only covers the simple cases of references to issues and repos. More
complex areas, such as deployment scripts, will be handled separately.

Part of https://github.com/vector-im/element-web/issues/14864
2020-08-03 18:32:42 +01:00
J. Ryan Stinnett
92f48eced9 Remove JS SDK, no longer needed for lint rules
The JS SDK was previously only here for the ESLint config, but this is now part
of a separate package.
2020-07-28 16:37:46 +01:00
David Baker
d9e8fa34e7 Catch exceptions from main method in fetch script 2020-07-23 11:14:26 +01:00
David Baker
3a253fe742 Some terribleness to make updating work on windows
Squirrel doesn't handle the executable changing name, as hopefully
explained in comments
2020-07-14 19:05:28 +01:00
David Baker
466a871094 Rebrand step 1: s/riot/element/ in the places where it's reasonably simple 2020-07-01 15:30:53 +01:00
J. Ryan Stinnett
662aa56b4b
Merge pull request #85 from vector-im/jryans/linter
Add CI scripts to install and link JS SDK
2020-05-12 10:55:40 +01:00
J. Ryan Stinnett
7f7357573c Add CI scripts to install and link JS SDK
This installs and links the JS SDK to access ESLint rules and their deps. These
scripts are copied from the React SDK.

Part of https://github.com/vector-im/riot-web/issues/13584
2020-05-11 10:33:31 +01:00
J. Ryan Stinnett
c2896a9caf Persist GPG keys for Linux builds via Docker
Each build command via Docker for Linux builds creates a separate writable layer
from scratch, so anything shared between commands needs to persist on the host.

This adds the container's GPG keys, so that the riot-web GPG key can be
imported in one step and verified in the next.

Fixes https://github.com/vector-im/riot-web/issues/13545
2020-05-07 13:55:21 +01:00
David Baker
8b9314cc0d Get the app ID from the cintext
So we can use the right app ID for nightly
2020-03-11 19:21:14 +00:00
David Baker
a1366992bc Remove things that now live in riot-builder 2020-03-07 16:12:59 +00:00
David Baker
0304096e46 lint 2020-03-06 16:42:24 +00:00
David Baker
dd59fd586a Merge remote-tracking branch 'origin/master' into dbkr/winsign 2020-03-06 16:31:25 +00:00
David Baker
ecbfbe73a0 Add really useful stackoverflow link 2020-03-06 16:18:55 +00:00
David Baker
e2a6cc3196 Remove certificateSubjectName which didn't work
and comment cert file hard-coded hack
2020-03-06 16:14:51 +00:00
David Baker
aad1e8388e Nope, that didn't work. Try the cert file, 2020-03-06 15:57:25 +00:00
David Baker
83746b5709 let's try this format 2020-03-06 15:52:54 +00:00
David Baker
781eff95ac hardcode cert sha1 to test 2020-03-06 15:51:39 +00:00
David Baker
d403b86690 Removing logging 2020-03-06 15:34:36 +00:00
David Baker
bffee2d4c3 Add csp option which is apparently required 2020-03-06 15:01:50 +00:00
David Baker
1585e370d3 It's options.options in the original so keep it that way 2020-03-06 14:55:14 +00:00
David Baker
7f25e23878 Also try actually returning the value 2020-03-06 14:50:53 +00:00
David Baker
763b176b2e variable name 2020-03-06 14:49:55 +00:00
David Baker
5c85de4934 Fix synatx hopefully 2020-03-06 14:47:09 +00:00
David Baker
f961513212 args, not options 2020-03-06 14:38:13 +00:00
David Baker
6e8f8dcdce Define the args variable
also it's not osslsigncode anymore
2020-03-06 14:35:09 +00:00
David Baker
cee7410388 also just one level of options 2020-03-06 14:32:02 +00:00
David Baker
8cbef5b5e5 name the function the same thing 2020-03-06 14:29:11 +00:00
David Baker
da606bcd6d Too many dots 2020-03-06 14:22:06 +00:00
David Baker
4dbbf2bb15 Add a windows signing script
As electron builder doesn't support supplying a key container name
which is the only way we can supply the token passphrase
2020-03-04 16:55:12 +00:00
Michael Telatynski
eac8118452 Small comment tweaks 2020-03-02 16:45:28 +00:00
David Baker
638fcabf16
Merge pull request #35 from vector-im/dbkr/exitcode
Exit with exit code on exception
2020-02-28 09:36:44 +00:00
David Baker
8aac5928a2
Merge pull request #34 from vector-im/dbkr/fix-set-version
Fix the set-version script
2020-02-28 09:31:59 +00:00
David Baker
de1090cc18 Actually pass a function 2020-02-27 21:43:19 +00:00
David Baker
8b8203cea8 Exit with exit code on exception
Otherwise running the check script will just exit with 0 which is
pointless.
2020-02-27 21:37:07 +00:00
David Baker
67a4c99907 Fix the set-version script
Call the right function to set package version and await
2020-02-27 17:34:34 +00:00
David Baker
f48692bddb Merge branch 'master' into dbkr/docker-env 2020-02-27 17:30:55 +00:00
David Baker
18dbad4e8c Revert e0631770b5 & 9ec2407957
Which were accidentally comitted to master and also completely wrong
as it sets the version to the literal 'develop' which is silly.
2020-02-27 17:30:00 +00:00
David Baker
fca983cc7d Merge branch 'master' into dbkr/docker-env 2020-02-27 17:22:38 +00:00
David Baker
9ec2407957 Don't shadow the import 2020-02-27 17:22:10 +00:00
David Baker
a76ebed5d2 Merge branch 'master' into dbkr/docker-env 2020-02-27 17:19:49 +00:00
David Baker
e0631770b5 Always update deb version
We always need the debian version to be correct.
2020-02-27 17:17:51 +00:00
David Baker
af1f4715be Pass through the env var we actually use to docker 2020-02-27 16:52:09 +00:00
David Baker
f58532b556 The variable is called this thing now 2020-02-26 11:59:18 +00:00
David Baker
40dc1d9384 Set version in fetch script
Which plays better with doing develop builds.
2020-02-26 11:56:59 +00:00
David Baker
0c28d1bfb2 Use needle consistently
and remove unused variable
2020-02-21 18:25:33 +00:00
David Baker
b94c52c244 Support fetching the latest develop build
Frustratingly, this requires a buildkite API token, even though
the builds & artifacts are available without auth on the buildkite
website.
2020-02-21 18:17:31 +00:00
David Baker
90913256f5 Add our native modules separately into the files
And also the package.json which, for reasons I'm not going to spend
the next two hours of my life wading through the electron-builder
source to discover, is no longer automatically included after adding
the files pattern. The node_modules folder is handled automatically
though, so is redundant.

Change the output directory structure so we have one directory with
all the built native modules under that we can just add to the files,
rather than having to add each one separately.

NB. electron-builder add its own filters to node_modules so that only
runtime (ie. not devDependencies) are copied. These seem to apply
even for manually specified path within node_modules. We can copy *to*
the node_modules directory, however...
2020-02-21 10:57:52 +00:00
David Baker
dd6f52e2de Fix setversion script's yarn call on windows 2020-02-19 14:34:27 +00:00
David Baker
7b8ae78038 More comment 2020-02-19 10:07:02 +00:00
David Baker
cb96b41645 Merge remote-tracking branch 'origin/master' into dbkr/hak_win_x86 2020-02-19 10:01:18 +00:00
David Baker
da5a0e63ec
Merge pull request #22 from vector-im/dbkr/hak_linux
Build seshat on Linux
2020-02-19 10:00:07 +00:00
David Baker
3b642389f2 First attempt at 32 bit windows building 2020-02-18 11:01:34 +00:00
David Baker
c6784f829a
Apply suggestions from code review
More fixes under, 'typing is hard'

Co-Authored-By: poljar <poljar@termina.org.uk>
2020-02-18 09:59:09 +00:00
David Baker
13c627ff64
Typing
Co-Authored-By: poljar <poljar@termina.org.uk>
2020-02-18 09:58:09 +00:00
David Baker
52032aac14 Docker powered linux building 2020-02-17 20:10:58 +00:00
David Baker
0bfc970619 Document more awfulness 2020-02-17 17:31:01 +00:00
David Baker
0ccc29e504 missed the script 2020-02-17 15:52:41 +00:00
David Baker
19ee3d4aff Add some checks for the tools we need
May not be exhastive, but useful on Windows where you need to
remember to install stuff.
2020-02-17 15:44:06 +00:00
David Baker
5fc72e8f73 Lint scripts dir 2020-02-17 14:49:26 +00:00
David Baker
046170e3ec Less hacky fix for yarnrc 2020-02-15 20:17:35 +00:00
David Baker
a0d9359ef0 Working seshat building on Windows 2020-02-15 16:52:41 +00:00
David Baker
0258d456e6 Initial commit of native dependency building. 2020-02-13 23:52:16 +00:00
David Baker
3716545085 Typo 2020-02-04 22:19:28 +00:00