Commit graph

56 commits

Author SHA1 Message Date
renovate[bot]
18eea3eb11
Update dependency detect-libc to v2 (#1407)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-01-02 18:15:58 +00:00
renovate[bot]
3bfe26a1f8
Update dependency prettier to v3 (#1405)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-01-02 18:12:16 +00:00
Li-Wen Hsu
a0f92941fc
Add FreeBSD support (#1163)
Co-authored-by: Hiroki Tagato <tagattie@gmail.com>
2023-08-09 10:11:27 +01:00
Mathieu Velten
cf94a1e49a
Use a fully static seshat build (#631)
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2023-04-24 12:19:10 +00:00
renovate[bot]
ed8870dc9f
Update dependency rimraf to v5 (#645)
* Update dependency rimraf to v5

* Update dependency rimraf to v5

* Update import

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2023-04-18 18:59:12 +01:00
renovate[bot]
645a79f956
Update dependency mkdirp to v3 (#644)
* Update dependency mkdirp to v3

* Iterate

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2023-04-18 15:08:33 +00:00
renovate[bot]
1a99740bc8
Update dependency glob to v9 (#575)
* Update dependency glob to v9

* Adjust copy.ts to promisifed glob

* Switch asar -> @electron/asar

* Update rimraf for glob v9 compatibility

* Iterate

* Iterate

* Patch @electron/asar

* Fix another way

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Janne Mareike Koschinski <jannemk@element.io>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2023-04-06 12:41:38 +00:00
Michael Telatynski
1654030c5f
Iterate ARM support in CI (#587) 2023-03-23 13:22:29 +00:00
Michael Telatynski
7a1a0fabdb
Add support for Windows arm64 (#423) 2023-03-22 09:41:51 +00:00
Andy Balaam
0faac52dae Format all files with prettier 2022-12-15 11:52:12 +00:00
Michael Telatynski
d766aef435
Enable strict mode on hak tsconfig (#483) 2022-12-14 10:47:35 +00:00
Michael Telatynski
56370de568
Improve use of Typescript (#474)
* Switch out needle with node-fetch

* Iterate

* Update asar package and switch to canonical name

* Use ts-node for scripts

* Iterate

* Update yarn.lock

* Use node:stream.promises

* Remove logfile

* Fix types

* Fix types
2022-12-05 11:50:49 +00:00
renovate[bot]
f4bf425148
Update all non-major dependencies (#468)
* Update all non-major dependencies

* Iterate PR

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-12-01 07:20:55 +00:00
Michael Telatynski
392005b3a4
Fix use of detect-libc typing (#421) 2022-09-23 12:14:09 +01:00
Michael Telatynski
b89b2637b9
Fix typing (#420) 2022-09-23 11:04:38 +01:00
Jan Christian Grünhage
fa5f42a627
support compilation on more targets (#376)
* support compilation on more targets

* Update scripts/hak/target.ts

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-06-10 20:51:34 +00:00
Michael Telatynski
8c3c190856
Revert back to using libsqlcipher0 for Debian & Ubuntu packages of Desktop (#367)
* Revert back to using libsqlcipher0 for Debian & Ubuntu packages of Element Desktop

Add option to static link for linux instead of forcing it

* Fix linux variants and add CI job

* Fix workflow syntax and add concurrency

* public all the things
2022-05-27 09:15:47 +01:00
Michael Telatynski
f1f659b6a0
Improve hak & build ia32 again by default (#369)
* Improve hak & build ia32 again by default

* Test both x86_64 and i686 in CI

* Improve macOS job name

* Try other things

* Iterating this is no fun

* Attempt again

* pwsh is the default, use cmd

* Update the incantation for 2022

* Avoid warning multiple times

* Consolidate build tool setup

* Move default targets to electron-builder and fix warnings
2022-05-26 23:05:59 +01:00
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
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
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
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
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
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
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
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
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