Commit Graph

78 Commits

Author SHA1 Message Date
Michał Cieślak f75e4e0c47 Introduce ability of calling StatusQ methods from nim
Closes: #16496
2024-10-11 23:37:50 +02:00
Igor Sirotin a4646cd71c
fix(status-go)_: add missing status-go dependencies (#16470)
Requires things like: go-bindata mockgen protobuf

Fixes:
https://github.com/status-im/status-desktop/issues/16477

For more details see:
https://github.com/status-im/status-go/pull/5878

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-10-08 19:36:20 +05:30
Iuri Matias c0885d66db chore: update in config.nims the minimum version to montery / 12 2024-09-03 13:36:37 -04:00
Iuri Matias 1b8d40dfc0 chore: Fix error detection for missing Homebrew bottles 2024-09-03 13:36:37 -04:00
Jakub Sokołowski c2b404f410
chore(ci): add debug logs for windows signing
https://learn.microsoft.com/en-us/windows/msix/package/signing-known-issues

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-08-27 19:06:38 +02:00
Anton Iakimov 6e276b605f
ci: fix more nix build issues 2024-06-27 12:16:31 +02:00
Siddarth Kumar 9f67616b63
chore: bump go to 1.21 (#14946) 2024-05-30 17:08:31 +05:30
Igor Sirotin 95eb5fe71d
chore: `bump-status-go.sh` latest option (#13766)
* chore: enable `bump-status-go.sh` to upgrade to latest

* better pr link

* STATUS_DESKTOP_MAIN_BRANCH variable
2024-02-28 20:26:42 +00:00
Igor Sirotin 28d8145136
fix: use `fleetFromString` function to prevent panic for unknown values (#13699) 2024-02-23 10:14:42 +00:00
Jakub Sokołowski 38068908ac
fix(ci): fix line split in ubuntu_build_setup
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-02-08 17:15:46 +01:00
Jakub Sokołowski effe996239 fix(ci): fix OS version check in Ubuntu setup script
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-12-06 15:07:02 +01:00
Igor Sirotin a2e8655835
chore: fix nim build warnings (#12796)
* chore: turn off  'generic methods are deprecated' warnings
* chore: fix homebrew bottles version and macos-min-version
* chore: suppress dotherside deprecation warnings
* chore: fix more nim unused import warnings
* chore(qt.nim): explicit cstring conversion to fix warning
* chore: fix all baseless methods
2023-11-20 16:04:11 +00:00
Roman Volosovskyi 38140cdd94
Add yarn installation to macOS setup script 2023-11-01 15:34:57 +01:00
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
Jakub Sokołowski c0b564e160
fix(ci): pin linuxdeployqt at 20230423 (8428c59)
Using continuous builds is a great way to get unexpected results.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-10-24 13:47:56 +02:00
Jakub Sokołowski 49ec6962b1 sign-macos-pkg.sh: move gatekeeper verification
This now fails when the app is signed with a new certificate
create from our new Apple organization but is not notarized:
```
tmp/macos/dist/Status.app: rejected
source=Unnotarized Developer ID
```
I actually have absolutely no idea why this verification worked
with the old certificate, but it did.

For that reason I'm moving it to after notarization.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-08-11 16:19:48 +02:00
Anton Iakimov dcfebbcb9e
ci: switch altool to notarytool 2023-08-10 14:31:17 +02:00
Lukáš Tinkl 068449c04c chore: update English TS files 2023-06-26 15:07:38 +02:00
Jakub Sokołowski 73d5206160 ci: add missing platform tools from VS build tools
Fixes this failure:
```
error MSB8020: The build tools for Visual Studio 2017 (Platform Toolset = 'v141') cannot be found.
To build using the v141 build tools, please install Visual Studio 2017 build tools.
```

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-06-21 15:19:21 +02:00
Jakub Sokołowski ec2c6dd8ea ci: install vcredist2022 as 2019 has been removed
See this PR for details:
https://github.com/ScoopInstaller/Extras/pull/11357

Also check if `exras` bucket already exists.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-06-21 15:19:21 +02:00
Jakub Sokołowski 574300e6ac ci: fix installation of windows build dependencies
If we don't installe Go separately this is what happens:
```
PS C:\Users\jenkins> scoop install --global 7zip git dos2unix findutils wget rcedit inno-setup make cmake gcc go@1.20.4
Couldn't find manifest for 'C:\Users\admin\scoop\buckets\main\bucket\go.json7zip git dos2unix findutils wget rcedit inno-setup make cmake gc
```
Seems like some kind of parsing issue with providing a version.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-06-21 15:19:21 +02:00
Igor Sirotin 5b5361c9b0
feat(scripts): simple python script to interact with database (#11184)
* fix(scripts): fix `password-hash.py`
2023-06-20 18:27:47 +03:00
Jakub Sokołowski ffa200f32d
ci: upgrade from Go 1.19.5 to 1.20.4
This is supposed to fix crashes on M1 Macs:
https://github.com/status-im/status-desktop/issues/10548
https://github.com/status-im/status-desktop/pull/10442
Specifically this commit:
c00e9285ea

https://go.dev/doc/devel/release#go1.20

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-05-04 16:01:17 +02:00
Igor Sirotin 7dfd13ca77
fix(ens): Various ENS-related UI fixes (#10492) 2023-05-01 23:32:36 +03: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
Jakub Sokołowski 645d9c8276 ci: fix handling of stdout in MacOS notarization
Otherwise we get failures like:
```
parse error: Invalid numeric literal at line 1, column 11
```
Which results in `stderr` logs being included in `$OUT`.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-04-12 16:02:34 +02:00
Richard Ramos d985c4b0b9 chore: script for creating local test fleet 2023-04-12 09:57:58 -04: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
Jakub Sokołowski 8a1e1947ae ci: remove submodule vendor folders to save space
Currently the `nimbus-build-system` exists twice in each checked out
`status-desktop` reposity, and each contains the `Nim-csources-v1`
submodule, which weights close to 900MB each:
https://github.com/nim-lang/csources_v1

Because of this each `status-destop` clone takes up 4 GB of disk space
after the cleanup has run, which is not okay.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-03-01 13:07:05 +01:00
Jakub Sokołowski 246e8b2704 ci: add missing dependencies for Qts libqxcb.so
Without the following dependencies:
```
libxcb-shape0 libxcb-randr0 libxcb-icccm4 libxcb-image0
libxcb-keysyms1 libxcb-render-util0 libxcb-render0 libxcb-xinerama0
```
The `libqxcb.so` library is unusable:
```
 > ldd -v /opt/qt/5.15.2/gcc_64/plugins/platforms/libqxcb.so
 > echo $?
1
 >
 > LD_TRACE_LOADED_OBJECTS=1 /lib64/ld-linux-x86-64.so.2 /opt/qt/5.15.2/gcc_64/plugins/platforms/libqxcb.so
zsh: segmentation fault (core dumped)  LD_TRACE_LOADED_OBJECTS=1 /lib64/ld-linux-x86-64.so.2
```

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-02-03 11:39:51 -05:00
Jakub Sokołowski fc5dbf0d2c
ci: update build setup scripts to Qt 5.15.2
This needs to be synced with a Squish upgrade to match the QT version.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-02-01 23:15:56 +01:00
Alex Jbanca 6e6693a428 chore(Qt5.15): Update windows CI Qt install script
chore(Qt5.15): Update windows Qt install script
2023-01-31 19:30:24 +02:00
Igor Sirotin 6f7c1c6b6a feat(scripts): Added python password hash script for manual database access 2023-01-18 18:11:35 +03:00
Jakub Sokołowski 8b8f514dd4
ci: show output from xcrun_altool on notarize error
Right now we don't see what's actually happening:
```

!!! Notariztion Error
{"tool-version":"5.4211.13411","tool-path":"\/Applications\/Xcode.app\/Contents\/SharedFrameworks\/ContentDeliveryServices.framework\/Versions\/A\/Frameworks\/AppStoreService.framework","os-version":"12.3.1","product-errors":[{"message":"You supplied an invalid RequestUUID: null","userInfo":{"NSLocalizedFailureReason":"Apple Services operation failed.","NSLocalizedRecoverySuggestion":"You supplied an invalid RequestUUID: null","NSLocalizedDescription":"You supplied an invalid RequestUUID: null"},"code":1515}],"warnings":[{"message":"altool has been deprecated for notarization and starting in late 2023 will no longer be supported by the Apple notary service. You should start using notarytool to notarize your software.","userInfo":{"NSLocalizedDescription":"altool has been deprecated for notarization and starting in late 2023 will no longer be supported by the Apple notary service. You should start using notarytool to notarize your software."},"code":-1030}]}
make: *** [notarize-macos] Error 1
```

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-12-08 20:04:38 +01:00
Jakub Sokołowski 9f076ed70c
ci: refactor uitests to use multiple stages
Please do not run 20 different things in a single stage.
It makes debugging much harder than it needs to be, since now you can
see at a glance the startup of which container fails easily.

Changes:
- Starting of Ganache and Nim-Waku containers extracted to separate stages
- Cleanup of containers moved to `cleanup` step after tests are executed
- Many variables moved to `enrivonment` section for job and some stages
- The `throttle` effect narrowed down just to the `Tests` stage and not whole job
- RPC API is used to get the Multiaddress of Nim-Waku node instead of hardcoding key
- Removed no longer necessary `status-go` history node related files
- `Jenkinsfile.uitests` was renamed to `Jenkinsfile.e2e` to match CI job names

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-11-23 00:19:06 +01:00
Jonathan Rainville 6609ebda9e fix(windows): remove extra -m option from aqt install
As per the documentation of aqt, we just need one `-m` and list the modules after. It seems like the first -m is ignored otherwise.
2022-11-22 10:52:21 -05: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 c500eb9dc6
ci: lock windows Go version at 1.18.8
Fixes the following build error:
```
protocol\messenger.go:5957:6: missing function body
protocol\messenger.go:5957:16: syntax error: unexpected [, expecting (
protocol\messenger.go:5959:2: syntax error: non-declaration statement outside function body
note: module requires Go 1.18
```

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-11-04 15:43:26 +01:00
Lukáš Tinkl 38b6bdbfd3 chore: split English TS files
- qml_base.ts is created as a reference point for translators
- qml_en.ts is a minimal overlay translation, providing just the needed
  plural forms
- adjust the script to generate the above TS files
- fixup some leftover qsTrId() calls and the qmake file
2022-10-19 10:48:08 +02:00
Anthony Laibe 11ec999417 test: Add xvfb to the runtime dependencies 2022-08-08 15:36:32 +02:00
Anthony Laibe 3fad95ea0e test(@general): run squish test on ci 2022-08-05 10:11:42 +02:00
Anthony Laibe 4fc3e788b6 test(@ci): add scripts to build on ubuntu 2022-08-01 12:42:36 +02:00
Lukáš Tinkl 639a70b611 fix(l10n): fix strings extraction
- handle `SOURCES` recursively, rather than spelling all the paths out;
most of them were outdated and some still missing
- let the Python script skip existing translations (in case we need to
manually add plurals)
- updated qml_en.ts as a result of these changes

Stats:
```
Updating '../../ui/i18n/qml_en.ts'...
    Found 1703 source text(s) (109 new and 1594 already existing)
    Kept 35 obsolete entries
    Same-text heuristic provided 35 translation(s)
```
2022-07-21 15:57:59 -04:00
Jakub Sokołowski 9b8138a3e6
rename status-react to status-mobile
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-07-17 16:55:57 +02:00
Patryk Osmaczko 757a05900f chore(translations): update i18n docs
issue: #4544
2022-07-06 19:09:50 +02:00
Patryk Osmaczko 356f9c53db chore(translations): add update-en-ts.py 2022-07-06 19:09:50 +02:00
Stefan 9fe369a1e7 chore(Build): raise awareness of brew download failed 2022-06-27 10:10:29 +02:00
Richard Ramos 1c85bd38b3 chore: create script to bump status-go 2022-06-14 16:11:51 -04:00
Richard Ramos b95315ffd6 chore: add qtlottie to aqtinstall parameters 2022-03-23 16:43:50 -04:00