Commit Graph

147 Commits

Author SHA1 Message Date
Stefan ccd8c5b65f feat(wallet) Wallet Connect integration prototype
Implement a prototype of integrating [WalletConnect Web SDK]()

- integrate WalletConnect Web SDK using Node.js and packing it using
  [webpack](https://webpack.js.org/guides/getting-started/)
  - this way, we achieve the same versioning strategy for the SDK
- add WalletConnectSDK view
  - it is used to load the web SDK via a WebView (validated working on
  Mac and Windows)
- add new app dependency of WebView QT
  - also update vendor packages `Dotherside` and `nimqml` to add
    required WebView::initialize API used to initialize the WebView
    integration at the app start
- add WalletConnectPage to Storybook for quick prototyping
  - Also add dependency for WebView Qt lib
- index.js is the wrapper used to provide a simple stateful interface
  with the WC SDK
- Entry in ui/generate-rcc.go ensures the node_modules cache is excluded
  from the resource file

Notes:

- Added `com.apple.security.cs.allow-jit` entitlement when signing the
app package. This allows Execution of JIT-compiled Code Entitlement
required by the fast-path of the JavaScriptCore framework on MacOS
platforms.
- Keep some debugging entries expected to help debugging Linux package
- Removed outdated `DerivationPathInputRegressionTests` qml test

Closes #12301
2023-10-30 09:29:33 +01:00
Igor Sirotin 8cee3f500a chore(macos): add entitlements required for squish
And CI parameter to override the default entitlements.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-10-26 21:17:09 +03:00
Richard Ramos b638e1bf53 feat: allow passing args to `make run` 2023-10-19 17:15:17 -04:00
Michał Cieślak 5d0466b627 General: Exclude Storybook's PageValildator to separate target in Makefile to mitigate QTBUG-92236
This workaround can be removed after full migration to Qt >= 5.15.4
2023-10-18 13:50:35 +02:00
Michał Cieślak d33e8f23a0 feat(Storybook): Add storybook targets to Makefile
Adds target to run a storybook itself (run-storybook) and also
target to run all tests from storybook directory (run-storybook-tests):
- unit tests for storybook itself
- unit tests for the app using the same stubs mechanism (in offscreen
  mode)
- PagesValidator

Tests are run via ctest.

Closes: #12448
2023-10-17 09:19:51 +02:00
Jakub Sokołowski 55833dad2d
chore(keycard): add USE_MOCKED_KEYCARD_LIB
Use of TEST_ENVIRONMENT variable is just adding confusion, since that
variable is supposed to be used at runtime and not build time.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-10-13 09:02:33 +02:00
Dario Gabriel Lipicar 3354af0784 feat(@desktop/wallet): use Alchemy API key for Ethereum main/goerli 2023-10-05 10:29:48 -03:00
Anastasiya Semenkevich 41672271dc chore(@keycard makefile): extend condition to accept env variable as true and 1 values 2023-09-29 13:45:22 +03:00
Sale Djenic d107a9f90b feat(@desktop/keycards): managing mocked keycards when running keycard flows 2023-09-27 18:20:43 +02:00
Michał Cieślak 51fd567c82 general: Add possibility to build/run StatusQ tests via make 2023-09-06 10:00:17 +02:00
Anton Iakimov dcfebbcb9e
ci: switch altool to notarytool 2023-08-10 14:31:17 +02:00
Igor Sirotin 8d14c8b885
chore(makefile): improve dotherside build (#11756) 2023-08-02 14:25:05 +03:00
Igor Sirotin b9fbb7c50c
fix: Add camera entitlement on MacOS (#11683) 2023-07-27 11:39:43 +03:00
Lukáš Tinkl 57fc600d5e feat: Add status-go version to About screen
- Settings/About now displays the `status-go` version, read from its
`VERSION` file
- use the actual app icon, to differentiate between prod/dev version
- make the version numbers clickable, taking the user to either the
release notes (prod) or the GH commit browser (dev)
- add "Is production" switch to the About page in storybook

Closes #11424
2023-07-26 21:35:21 +02:00
Cuteivist 9b293f9c34
feat(@desktop/wallet): Loading animation for input data decoding (#11378)
closes #11333
2023-07-10 15:36:29 +02:00
Jakub Sokołowski 24cdab41c6 ci: fix read-only FS errors in AppImage
After a LOT of work from @jrainville bisecting the release branch he
identified the issue to be this commit:
https://github.com/status-im/status-desktop/commit/dad8e453
ci: bump client build retries to 20

Which actually was poorly squashed by @iurimatias and contains the
commit that also adds the retries in the first place:
https://github.com/status-im/status-desktop/commit/a5ba2537
ci: retry nim_status_client build 3 times

The reason why that's an issue is because normally it was caled by `make
tgz-linux` target which included this setting:
```
override RESOURCES_LAYOUT := $(PRODUCTION_PARAMETERS)
```
Which caused `NIM_PARAMS` to use `-d:development` instead of `-d:production`.
The result was the app trying to write config file changes to the read-only
filesystem of the AppImage.

Resolves: https://github.com/status-im/status-desktop/issues/11295

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-07-05 15:37:15 -04:00
Jakub Sokołowski 08ef5efda5 fleets.json: drop decomissioned eth.test fleet
The fleet wasn't being used so it has been liquidated:
https://github.com/status-im/infra-eth-cluster/commit/de986014

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-06-30 08:35:06 -04:00
Jonathan Rainville be958d5a1e chore: remove dictionary 2023-06-09 14:50:08 -04:00
Patryk Osmaczko 853929b430 chore(Makefile): ensure LD_LIBRARY_PATH is not overriden 2023-06-08 13:09:59 +02:00
Jakub Sokołowski e19105d878 Makefile: refactor nim_status_client target
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-06-06 17:48:44 +02:00
Alex Jbanca 4e54ee57a6 chore(enableStatusGoOptimizations): Optimise Release build with O3 CFLAG 2023-06-03 09:03:08 +03:00
Jakub Sokołowski a0a5e6d219 makefile: fix MacOS builds, restore missing env vars
For some reason the an infra change has triggered the behavior of `make`
where the `if` clauses that compares `QT5_PKGCONFIG_INSTALL_PREFIX` with
`QT5_INSTALL_PREFIX` would be true, which would cause `QT5_LIBDIR` to
not be exported, and some `NIM_PARAMS` to not be set at all.

Resolves: https://github.com/status-im/status-desktop/issues/10876

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-06-02 16:00:59 +02:00
Jakub Sokołowski 99fdc91e2b macos: bump notarization retry limit from 20 to 40
Notarization has been taking longer recently and it times out.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-04-27 13:49:29 +02:00
Igor Sirotin 70e8370aae
fix(Makefile): Bugfixes and minor improvements (#10423) 2023-04-25 18:01:19 +03:00
Igor Sirotin ac9069aae6
fix(Makefile): Move StatusQ to order-only-dependencies of the app (#10351) 2023-04-18 19:14:00 +03:00
Igor Sirotin aefa2b9f48
fix(StatusQ): StatusQ is QML module (#10207)
* StatusQ QML module
* qzxing is static lib again
* updated StatusQ resources
* fixed Emoji lookup
* added display to tests-imports ci
2023-04-14 11:18:56 +03:00
Igor Sirotin 14c264e350
feature(Syncing): Embed QR code scanner for syncing devices on onboarding (#9981)
* fix(StatusQrCodeScanner): Improve QR code scanner
- Almost async loading
- Added camera selector
- Added `captureRectangle` property
- Add component info to sandbox qr code scanner page
- Embed QrCodeScanner into desktop app
* Compile and link qzxing as shared library
* Hardcode settingCurrentNetwork. Propagate inputConnectionString errors.
* Added qzxing libdir to e2e tests ld_library_path
2023-03-30 20:57:18 +03:00
Alex Jbanca 4ccdcdf44e chore: Add Apple silicon support 2023-03-22 15:20:07 +02:00
Igor Sirotin 7c1c178d37
QR code scanner (QML component) (#9464)
Co-authored-by: Richard Ramos <info@richardramos.me>
2023-03-07 12:08:38 -04:00
Anthony Laibe 7d9a6f5a71 feat(@wallet): add pokt network + fallbark 2023-02-28 09:12:05 +01:00
Igor Sirotin f899b09082 fix(Makefile): Fixed ANSI coloring 2023-01-25 11:08:40 +03:00
Michał Cieślak e3e99c6a48 feat(general): Initial setup for app monitoring tool
Closes: #8786
2023-01-13 13:47:08 +01:00
Ivan Belyakov 86f64a4613 fix: build issue caused by pkgconfig and system-wide QT.
Avoid using QTDIR env and hardcoded subdirectories.
Use 'qmake' to detect paths to lib, qml, etc.
It fixes build on hosts with multiple QT installations, where
one of them is installed system-wide.
2023-01-11 15:28:34 +03:00
Patryk Osmaczko 046e75e441 fix(makefile): make `tests-nim-linux` depend on DOTHERSIDE 2023-01-11 10:57:21 +01:00
Patryk Osmaczko ce08265e0d chore: re-enable logging in prod version
closes: #8932
2023-01-04 18:16:04 +01:00
Patryk Osmaczko 94d7c478eb feat: introduce nim tests 2022-12-21 10:32:46 +01:00
Boris Melnik f47e64c7e2 fix(hunspell): Remove hunspell usage in DOtherSide 2022-12-15 20:45:00 +03:00
Jakub Sokołowski ff9c678a1e
ci: extract git cleanup to separate script
It needs to be separate script, because once the submodules are broken
and the `variables.mk` file is not available from `nimbus-build-system`
then we cannot even call `make clean-git` successfully because it will
be caught by the `if` clause that checks for `variables.mk`.

Possible fix for issues with submodules not being updated in some
windows release builds.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-11-22 14:28:14 +01:00
Jakub Sokołowski c454878e0d
ci: improve clean-git by reseting submodules
This avoids a situation in which `variables.mk` from
`nimbus-build-system` does't exist, but at the same time `git submodule
update` doesn't work due to sumodules stuck in a bad state.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-11-21 17:43:05 +01:00
Jakub Sokołowski ce178da4b4
makefile: avoid rebuilds by using order-only deps
By using the pipe(`|`) operator which indicates order-only dependencies
we can avoid unnecessary rebuilds triggered by additon of QT dir check:
https://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-11-14 16:15:47 +01:00
Jakub Sokołowski 0cf2c9c8da
Makefile: move QT dir check to separate target
This way we avoid errors about missing QT when calling targets that do
not require it, like `make clean` or `make deps`.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-11-08 10:13:25 +01:00
Jakub Sokołowski 38f0973dc3
ci: use git clean instead of cleanWs() function
This is a continuation of attempts to fix provlems with Windows CI hosts
getting into a broken state due to `.git` directory becoming a file for
random submodules for unknown reason.

Instead of relying on Jenkins functionality of `cleanWs()` function
provided by the [Workspace Cleanup Plugin](https://plugins.jenkins.io/ws-cleanup)
we use Git which should be more reliable, and possibly also speed up the
initial checkout of the repo and submodules.

A nice side-effect is that the repo checkout on all builds after the first
one takes ~1 minute instead of ~5 minutes.

Previous issues:
- https://github.com/status-im/status-desktop/pull/7968
- https://github.com/status-im/status-desktop/pull/8046

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-11-06 20:20:54 +01:00
Michał Cieślak 3d98ad6991 chore(general): ability to run StatusQ sanity checker from main Makefile
Closes: #7854
2022-11-04 12:01:59 +01:00
Richard Ramos b43dfaa59e chore: add KDF_ITERATIONS var to the makefile 2022-10-03 11:45:56 -04:00
Stefan 898b928ce2 chore(debug): use WAKUV2_PORT environment variable to change Waku V2 port
The environment variable overrides libp2p protocol TCP port and
discovery v5 UDP with the same value
2022-09-29 16:17:42 +02:00
Stefan b0a0b1d4e4 chore(dev): add STATUS_PORT env var forwarding to status-go 2022-09-23 08:41:14 -04:00
Richard Ramos 60284fdeae chore: remove npx 2022-09-14 15:52:16 -04:00
Richard Ramos 5b5069319e chore: install fileicon on make 2022-09-14 15:52:16 -04:00
Richard Ramos d8a7dcf3a2 feat: output messages to csv 2022-08-25 08:16:06 -04:00
Patryk Osmaczko 4303d674dd feat(Makefile): add QML_DEBUG and QML_DEBUG_PORT options
closes: #6973
2022-08-11 19:53:08 +02:00